34

我正在将我的项目从 Symfony 2.0.22 升级到 2.2.0 并查看一些更改,但我被阻止了:

我想用他们的控制器渲染(如在 Sf 2.0.X 中)一个标题,并且“渲染”树枝方法对我不起作用。他们是错误的:

渲染“OSSiteBundle:Index:index.html.twig”中的模板(“未找到“GET Index:header”的路由”)时引发异常。

这是实际的渲染方法:

{# src/OS/SiteBundle/Resources/views/layout.html.twig #}

...

{% render "OSSiteBundle:Index:header" with {'thisid' : block('thisid'), ... } %}

我试过 :

{{ render('OSSiteBundle:Index:header' , {'thisid' : block('thisid'), 'thistitle' : block('thistitle'), 'thisunderpageid' : block('thisunderpageid'), 'thisbackground' : block('thisbackground') }) }}

{{ include("OSSiteBundle:Index:header.html.twig", {'thisid' : block('thisid'), 'thistitle' : block('thistitle'), 'thisunderpageid' : block('thisunderpageid'), 'thisbackground' : block('thisbackground') }) }}

=>最后一个工作,但控制器不是以这种方式收集的

我什至尝试使用 routing.yml 中的路径进行渲染......我没有其他想法请帮帮我!

4

1 回答 1

87

在 Symfony >= 2.2.x 中,你应该像这样嵌入你的控制器:

{{ render(controller('AcmeArticleBundle:Article:recentArticles', { 'max': 3 })) }}

看一下文档:

创建和使用模板

升级-2.2

于 2013-03-05T10:24:27.620 回答