Adicionar guia / tarefa local a um nó


10

Eu criei um módulo chamado hotel_reviews.

Eu criei o nó da rota / {node} / reviews usando hotel_reviews.routing.yml .

hotel_reviews.content:
  path: '/node/{node}/reviews'
  defaults:
    _controller: '\Drupal\hotel_reviews\Controller\ReviewsController::content'
    _title: 'Reviews'
  requirements:
    _permission: 'access content'

Tentei adicionar uma tarefa local usando hotel_reviews.links.task.yml .

hotel_reviews.content:
  route_name: hotel_reviews.content
  title: 'Reviews'
  base_route: node.view
  weight: 100

Agora posso acessar o conteúdo definido pelo meu controlador em node/1/reviews, no entanto, quando vou para node/1, não vejo uma guia de comentários.

O que estou fazendo errado?

Eu tenho usado a seguinte documentação até agora:

Respostas:


14

Sua rota de base está errada. Você precisa usar a rota que o nó usa para / node / 1. Isso não é node.view. É entity.node.canonical.


3
É semelhante ao feito no módulo Tracker em seu arquivo tracker.links.task.yml da guia "Activity" (/ user / {user} / activity) para a qual a rota base é entity.user.canonical. (Eu adicionei este exemplo como lembrete para mim, esperando que ele vai ajudar outros usuários também.)
kiamlaluno

11
Isso funcionou muito bem para mim. Obrigado ... Mas está mudando do tema admin para o tema front-end ... Alguma idéia de como mantê-lo com o tema admin? Obrigado!
Delford Chaffin

11
Deixa pra lá ... encontrei ... deixando a resposta aqui para outras pessoas: (na definição de rota) opções: _admin_route: TRUE
Delford Chaffin
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.