0
我得到一個簡單的CRUD控制器與一個indexAction()列出所有項目。現在我想在另一個模板中渲染這個動作並改變它。渲染控制器操作時通過參數更改模板?
{{ render(controller("MyBundle:MyEntity:index")) }}
是否有預定義的參數來更改模板?當然很容易通過這個價值,但我不想重新發明輪子。
我得到一個簡單的CRUD控制器與一個indexAction()列出所有項目。現在我想在另一個模板中渲染這個動作並改變它。渲染控制器操作時通過參數更改模板?
{{ render(controller("MyBundle:MyEntity:index")) }}
是否有預定義的參數來更改模板?當然很容易通過這個價值,但我不想重新發明輪子。
有更改模板沒有本地參數,但你可以傳遞參數通過render
方法定義的動作......
{ render(controller('MyBundle:MyEntity:index', { 'template': 'MyBundle:ControllerName:foo.html.twig' })) }}
...並使用它你的控制器內的行動來決定哪個要呈現的模板。
class MyEntityController
{
public function indexAction($template = null)
{
// ... some code here
$template = $template ? $template : 'MyBundle:ControllerName:index.html.twig';
return $this->render(
$template,
array(
'variable' => $variable,
)
);
}
謝謝,這就是我想知道的。 – Daniel
呈現控制器,將所有內容委託給控制器動作。該動作決定要呈現哪個模板。 –
當然,我想告訴控制器使用另一個模板。 – Daniel