我對Symfony比較陌生,目前使用的是2.8版本。我一直在使用@Template註解成功是這樣的:在Symfony控制器中選擇自定義模板文件
/**
* @Route("/editleague/")
* @Template()
*/
public function editAction() {
return $array;
}
而且成功地呈現在包/資源樹枝模板/視圖/默認/ edit.html.twig
我決定,我想不同的響應(不是樹枝模板),如果它是一個POST請求,所以剛開始的時候,我改變了上面的代碼:
/**
* @Route("/editleague/")
*/
public function editAction() {
return $this->render("Default/edit.html.twig",$array);
}
但我得到一個500錯誤。我嘗試了各種組合,但沒有得到任何工作,我可以在函數本身控制渲染的模板。我相信這是一個簡單的問題,有更多經驗的人可以在幾秒鐘內找出答案。
在你的例子中,變量'$ array'沒有定義(但這可能是由於你的問題中的一個不好的例子,對吧?)。因此,請顯示應用程序的日誌告訴你有關錯誤的信息,並/或在開發環境中訪問它,並告訴我們在那裏顯示的內容。 – xabbuh
是的,$ array被定義了,我只是把這一部分留給專注於兩者之間改變的部分。我不能相信我忘了檢查開發模式。當我這樣做時,它說:無法找到模板「Default/edit.html.twig」。那麼Wha將成爲我的位置,我遵循(我認爲)與[symfony頁面](http://symfony.com/doc/current/book/controller.html#rendering-templates)上列出的想法相同。 –
啊,我明白了。那麼請看@ Paulpro的答案。 – xabbuh