ezpublish5 で自分のページのメニューを作成しようとしています。このチュートリアルhttp://partialcontent.com/Code/working-with-ez-publish-5-subrequestsに従いました。私は Symfony にかなり慣れていませんが、独自のバンドルがあり、実行されています。少なくとも、独自の pagelayout.html.twig を使用しています。
ルーティングが何をするかは理解していますが、私に関する限り、メニューを作成するには何か他のもの、おそらくサービスが必要なので、小枝テンプレートでこれを行うことができます
{{ render( controller( "myMenuController:myFunction" ) ) }}
これを my\Bundle\Resources\config\services.yml に追加します
parameters:
my_root.menucontroller.class: my\Bundle\Controller\MenuController
services:
my_root.controller:
class: %my_root.menucontroller.class%
arguments: [@ezpublish.view_manager]
calls:
- [setContainer, [@service_container] ]
myalias:
alias: my_root.controller
ブラウザで開くと、次のように表示されます。
You have requested a non-existent service "myalias".") in "{% extends "Bundle::pagelayout.html.twig" %}
github で ezp5 インストールの他のリポジトリを確認しましたが、ほとんど同じ yml セットアップがあります。また、services.yml で意図的に構文エラーを作成しても (テンプレートでコントローラーへの呼び出しを省略しながら)、何も変わらないことにも気付きました。また、my\Bundle\DependencyInjection\myBundleExtension.php (services.yml ファイルをロードすることになっている) で同じことを行っても、何も起こらないことに気付きました。
そのため、bundle-setup の何かが間違っていると感じています。どういうわけか、すべてが正しくロードされているわけではありません。しかし、それは何でしょうか?symfony2 のドキュメントのどこかに、Bundle\DependencyInjection\xyzExtension.php の load-method が自動的に呼び出されると書かれています。
私のセットアップで何が間違っている可能性があるのか 、誰かが考えているでしょうか? 私は本当にアイデアが不足しています。そして、ezpublish5 の部分については.. これは本当にメニューを作成する最良の方法ですか?