2012-03-15 88 views
0

我正在寻找将来自控制器的变量传递给我的模板的变量中的令牌,其中包含另一个模板;概念上的东西,如:树枝:用模板替换变量中的任意标记包括

// controller 
$post->content = "<p>Here's a short post that an enduser wrote. The enduser wants 
    product info to appear here: %product_info_here%. Over and out.</p>"; 

// Twig template 
<div class="content"> 
    {{ post.content 
    | replace({ '%product_info_here%': include('product_info.html.twig') }) }} 
</div> 

从开始看树枝代码,它看起来像过滤器不能访问他们的背景,所以将无法执行此。这个功能是否已经存在,如果不存在,那么在枝状结构中添加它的位置会在哪里?

UPDATE:

这是为了以使最终用户能够确定在何处应用程序应注入的部分。我把这个例子放在控制器中是为了简洁;真正的文字标记将作为最终用户输入的数据库中的Post记录的一部分,并且发布的内容将被传递给Twig模板。我希望Twig模板解析标记的帖子内容,并注入部分。

回答

0

你能否解释一下为什么你想在你的控制器中放置模板?我认为以下几点也可以发挥作用:

// Twig template 
<div class="content"> 
    <p>Here's a short post. Product info: {% include('product_info.html.twig') %}</p> 
</div> 
+0

谢谢;看到我对这个问题的更新。 – yitznewton 2012-03-15 14:55:13

+0

好的。我不知道一个简单的方法,但你应该能够使用嵌入式控制器来传递post.content作为参数。 – Cerad 2012-03-15 15:23:48