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:

Felix Eve
fonte

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.

Berdir
fonte
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