ノードにタブ/ローカルタスクを追加する


10

というモジュールを作成しましたhotel_reviews

hotel_reviews.routing.ymlを使用してルートノード/ {node} / reviewsを作成しました

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

次に、hotel_reviews.links.task.ymlを使用してローカルタスクを追加しようとしました

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

私は今では私のコントローラで定義されたコンテンツにアクセスすることができますnode/1/reviewsが、私はに行くとき、node/1私はレビュー]タブが表示されません。

何が悪いのですか?

これまでに次のドキュメントを使用しています。

回答:


14

基本ルートが間違っています。ノードが/ node / 1に使用するルートを使用する必要があります。それはnode.viewではありません。これは、entity.node.canonicalです。


3
これは、ベースルートがentity.user.canonicalである[Activity]タブ(/ user / {user} / activity)のtracker.links.task.ymlファイルのTrackerモジュールから行われたものと同様です。(この例は、他のユーザーにも役立つことを期待して、この例を思い出させるために追加しました。)
kiamlaluno

1
これは私にとってはうまくいきました。ありがとう...しかし、それは管理テーマからフロントエンドテーマに切り替わりつつあります...管理テーマでそれを維持する方法について何か考えはありますか?ありがとう!
Delford Chaffin

1
Nevermind ...見つけた...他の人のためにここに答えを残す:(ルート定義で)オプション:_admin_route:TRUE
Delford Chaffin
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.