Điểm:1

Tải động các mục menu được tạo từ tệp links.task.yml

lá cờ cn

Tôi cần tải theo chương trình các liên kết được tạo từ my_module.links.task.yml trên một trang khác.

Trường hợp sử dụng chính xác của tôi là tôi có một tập hợp các liên kết được hiển thị khi xem trang nút của mình. Các liên kết sẽ được hiển thị và ẩn dựa trên quyền truy cập của người dùng hiện tại và việc kiểm soát quyền truy cập được xử lý thông qua các tùy chọn trong tệp my_module.routing.yml.

Tôi cần tạo một trang riêng hiển thị dữ liệu nút trong bảng và tôi cần hiển thị các liên kết này trong tùy chọn thả xuống (tương tự như cách nút chỉnh sửa hoạt động khi xem nội dung với tư cách quản trị viên).

Có cách nào để tự động lấy các liên kết để sau đó tôi có thể hiển thị chúng trong trình đơn thả xuống đó không?

Điểm:1
lá cờ in

bạn có thể tải tất cả các các liên kết menu được xác định theo mô-đun (tức là các liên kết được xác định trong *.menu.links.yml với Trình đơnTrình quản lý liên kết dịch vụ getDefinition() và sau đó phân tích cú pháp danh sách chỉ cho các liên kết được mô-đun của bạn xác định.

$all_module_link_definitions = \Drupal::service('plugin.manager.menu.link')
  ->getDefinitions();

// Tiếp theo phân tích danh sách chỉ các liên kết được xác định bởi my_module.
$my_module_link_definitions = [];
foreach ($all_module_link_definitions as $plugin_id => $plugin_definition) {
  if ($plugin_definition['provider'] === 'MY_MODULE') {
    $my_module_link_definitions[$plugin_id] => $plugin_definition;
  }
}

Tương tự, bạn có thể tải tất cả các mô-đun xác định nhiệm vụ địa phương với Trình quản lý tác vụ cục bộ dịch vụ getDefinions() và sau đó phân tích cú pháp danh sách chỉ cho các tác vụ được mô-đun của bạn xác định.

$all_module_task_definitions = \Drupal::service('plugin.manager.menu.local_task')
  ->getDefinitions();

// Tiếp theo phân tích danh sách chỉ cho các tác vụ được xác định bởi my_module.
$my_module_task_definitions = [];
foreach ($all_module_task_definitions as $plugin_id => $plugin_definition) {
  if ($plugin_definition['provider'] === 'MY_MODULE') {
    $my_module_task_definitions[$plugin_id] => $plugin_definition;
  }
}

Đă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.