Tôi đang cố gắng thêm một tác vụ cục bộ tại đây (/admin/commerce/orders/{order#}). Tác vụ cục bộ này phải chứa chế độ xem lấy userrid từ đơn đặt hàng hiện tại và hiển thị lịch sử đặt hàng của người dùng đó.
Tôi tin rằng tôi đã thiết lập đúng chế độ xem và tôi có thể thêm thành công một tác vụ cục bộ tại đây (quản trị viên/người/% người dùng/đơn hàng) bằng cách thêm phần sau vào links.tasks.yml của mình:
custom_module.people.user_orders:
route_name: view.orders.page_2
base_route: entity.user.canonical
tiêu đề: 'Đơn đặt hàng'
cha mẹ: thực thể.user.canonical
trọng lượng: 100
Nếu tôi truy cập /admin/people/1/orders trong khi tác vụ này không được chú thích, tôi thực sự nhận được danh sách các đơn đặt hàng của người dùng này và bản thân tab nằm trong phần Trang chủ>Quản trị>Mọi người của trang web.
Tuy nhiên, nếu tôi xóa tác vụ cục bộ này và thay thế bằng tác vụ sau, tôi sẽ gặp lỗi:
custom_module.commerce_order.user_orders:
route_name: view.orders.page_2
base_route: entity.commerce_order.canonical
tiêu đề: 'Đơn đặt hàng'
mẹ: entity.commerce_order.canonical
trọng lượng: 16
lớp: '\Drupal\custom_module\Plugin\Menu\UserOrdersDynamicTab'
UserOrdersDynamicTab.php:
không gian tên Drupal\custom_module\Plugin\Menu;
sử dụng Drupal\Core\Menu\LocalTaskDefault;
sử dụng Drupal\Core\Routing\RouteMatchInterface;
lớp UserOrdersDynamicTab mở rộng LocalTaskDefault
{
/**
* {@inheritdoc}
*/
hàm công khai getRouteParameters(RouteMatchInterface $route_match)
{
trở lại [
'người dùng' => \Drupal::routeMatch()->getParameter('commerce_order')->getCustomerId(),
];
}
}
Việc bỏ ghi chú phiên bản này và ghi chú tác vụ cục bộ trước đó sẽ dẫn đến lỗi khi tôi truy cập /admin/people/1/orders. Để rõ ràng, tôi đang cố gắng tạo một tác vụ cục bộ chuyển tham số cho chế độ xem. Dưới đây là lỗi tôi nhận được. Cảm ơn bạn trước cho bất kỳ sự giúp đỡ bạn có thể cung cấp! (Đây là lần đầu tiên tôi đăng câu hỏi ở đây nên tôi cũng quan tâm đến việc sửa bài đăng của mình.)
Trang web này gặp phải một lỗi không mong muốn. Vui lòng thử lại sau.
Lỗi: Gọi hàm thành viên bundle() trên null trong Drupal\commerce_shipping\Access\ShipmentCollectionAccessCheck->access() (dòng 52 của mô-đun/contrib/commerce_shipping/src/Access/ShipmentCollectionAccessCheck.php).
Drupal\commerce_shipping\Access\ShipmentCollectionAccessCheck->access()
call_user_func_array() (Dòng: 160)
Drupal\Core\Access\AccessManager->performCheck() (Dòng: 136)
Drupal\Core\Access\AccessManager->check() (Dòng: 93)
Drupal\Core\Access\AccessManager->checkNamedRoute() (Dòng: 327)
Drupal\Core\Menu\LocalTaskManager->getTasksBuild() (Dòng: 358)
Drupal\Core\Menu\LocalTaskManager->getLocalTasks() (Dòng: 95)
Drupal\Core\Menu\Plugin\Block\LocalTasksBlock->build() (Dòng: 171)
Drupal\block\BlockViewBuilder::preRender()
call_user_func_array() (Dòng: 101)
Drupal\Core\Render\Renderer->doTrustedCallback() (Dòng: 772)
Drupal\Core\Render\Renderer->doCallback() (Dòng: 363)
Drupal\Core\Render\Renderer->doRender() (Dòng: 435)
Drupal\Core\Render\Renderer->doRender() (Dòng: 201)
Drupal\Core\Render\Renderer->render() (Dòng: 463)
Drupal\Core\Template\TwigExtension->escapeFilter() (Dòng: 47)
__TwigTemplate_82330771d2235f13341d75dc3dba6b0551e4091dc4e3e3af75b58a51080d8b70->doDisplay() (Dòng: 405)
Twig\Template->displayWithErrorHandling() (Dòng: 378)
Cành\Mẫu->hiển thị() (Dòng: 390)
Twig\Template->render() (Dòng: 55)
twig_render_template() (Dòng: 384)
Drupal\Core\Theme\ThemeManager->render() (Dòng: 422)
Drupal\Core\Render\Renderer->doRender() (Dòng: 201)
Drupal\Core\Render\Renderer->render() (Dòng: 463)
Drupal\Core\Template\TwigExtension->escapeFilter() (Dòng: 86)
__TwigTemplate_8396bbb6a446449db2b4f79819d5586f73fc0a7bf41d2501e27ba28c058bb7b1->doDisplay() (Dòng: 405)
Twig\Template->displayWithErrorHandling() (Dòng: 378)
Cành\Mẫu->hiển thị() (Dòng: 390)
Twig\Template->render() (Dòng: 55)
twig_render_template() (Dòng: 384)
Drupal\Core\Theme\ThemeManager->render() (Dòng: 422)
Drupal\Core\Render\Renderer->doRender() (Dòng: 201)
Drupal\Core\Render\Renderer->render() (Dòng: 162)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{đóng}() (Dòng: 564)
Drupal\Core\Render\Renderer->executeInRenderContext() (Dòng: 163)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse() (Dòng: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray()
call_user_func() (Dòng: 142)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch() (Dòng: 163)
Symfony\Component\HttpKernel\HttpKernel->handleRaw() (Dòng: 80)
Symfony\Component\HttpKernel\HttpKernel->handle() (Dòng: 58)
Drupal\Core\StackMiddleware\Session->handle() (Dòng: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle() (Dòng: 106)
Drupal\page_cache\StackMiddleware\PageCache->pass() (Dòng: 85)
Drupal\page_cache\StackMiddleware\PageCache->handle() (Dòng: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle() (Dòng: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle() (Dòng: 23)
Ngăn xếp\StackedHttpKernel->xử lý () (Dòng: 708)
Drupal\Core\DrupalKernel->xử lý() (Dòng: 19)