Điểm:2

Làm cách nào tôi có thể thực hiện một quy trình hàng loạt trong hook_install()?

lá cờ in

Khi mô-đun của tôi được cài đặt, tôi cần thực hiện một quy trình hàng loạt, tải hàng trăm thực thể và thực hiện công việc với chúng.

Điều này là tầm thường với hook_post_update_NAME() và nó hộp cát $ Biến đổi. Làm thế nào tôi có thể đạt được điều tương tự thông qua hook_install()?

Điểm:2
lá cờ ne

Nếu đó là một mô-đun tùy chỉnh, bạn có thể sử dụng hook_deploy_NAME(&$sandbox) bên trong MY_MODULE.deploy.php. drush triển khai: hook được thực hiện như một phần của triển khai drush sẽ nhận bất kỳ hook_deploy_NAME triển khai ngay cả các mô-đun mới được kích hoạt gần đây.

Vì vậy, hãy chắc chắn rằng bạn thực hiện triển khai drush như là một phần của quy trình triển khai của bạn, thì mô-đun tùy chỉnh của bạn sẽ được kích hoạt trước từ drush cim (và một mục trong core.extension.yml tất nhiên) và logic cài đặt tùy chỉnh của bạn sẽ được chạy từ drush triển khai: hook được thực hiện sau nó.

Mới phát hiện ra rằng hook_deploy_NAME triển khai sẽ không được đăng ký khi kích hoạt mô-đun như hook_update_N triển khai là. Mọi hiện tại hook_deploy_NAME việc thực hiện sẽ chỉ được chọn.

Đã nói chuyện nhanh về vấn đề này với Moshe Weitzman (người bảo trì Drush) trên Drupal Slack, hỏi xem đây có phải là lỗi không và anh ấy nói không, đây là một tính năng và hook_deploy_NAME triển khai được cho là chỉ được sử dụng trong các mô-đun tùy chỉnh.

Nhìn thấy https://drupal.stackexchange.com/a/254411/15055 cho tất cả các lệnh là một phần của triển khai drush.


bạn đã thử chưa lô_set trong móc cài đặt? https://drupal.stackexchange.com/a/310282/15055

sonfd avatar
lá cờ in
Ồ, tôi hoàn toàn quên mất `hook_deploy_NAME()`. Thật không may, trang web này chưa sử dụng `drush Deploy`. Và vì lý do nào đó, tôi không nghĩ rằng bạn có thể sử dụng `batch_set` trong `hook_install()`, nhưng bạn hoàn toàn có thể.
sonfd avatar
lá cờ in
Tôi đã giải quyết bằng `batch_set`

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.