例えば、以下のコントローラ/アクションを取る:Symfony2コントローラとテンプレートの式をバンドルに対して相対的に書くことはできますか?
public function indexAction()
{
return $this->render('TestBundle:TestController:index.html.twig');
}
こうして私はテンプレート式を書きたい(または何でもそれの名前です):
public function indexAction()
{
return $this->render('*:TestController:index.html.twig');
}
だから、symfonyは私は知っているがこの非常にバンドル内のテンプレートを探しています。私が参照したいすべてのテンプレート/アクション/リポジトリのOwner + Bundle全体を書くことは非常に面倒です。ほとんどの場合、私は同じバンドルのアクションとテンプレートを参照しています。
注:
'::index.html.twig'
しかし、それは私が必要なものではありません:私は、テンプレートはアプリレベルで置くことができ、このようreferncedことを知っています。
はい、私はこのようなことをしなければならないと思いました。解決策は良いですが、フレームワークがすべてのタイプの参照(ビューテンプレートだけでなく)のためにデフォルトでこのようなことをしたら本当にうれしいでしょう。バンドルは非常にきれいになります。 – Jens
上記の 'getCurrentBundle()'メソッドを使用する他のメソッドを変更できない理由はありません:) 'getRepository()'というショートカットを使用しています。これは 'getCurrentBundle()'で簡単にきれいになります。 –
symfonyを作った人にこれが組み込まれていれば確かにいいでしょう。 – Jens