这个问题可能有点傻,但无论如何我都是symfony的新手
prescenario 我通过执行此操作将控制器中的变量传递给index.html.twig
return $this->render('index/index.html.twig', [ 'department'=>$departments,'URILink'=>$URILink,'departmentDetail'=>$departmentDetails,'contentCell'=>$this->mContentCell ]);
使用{% dump %}
后,它会显示我
"department" => array:3 [▶]
"URILink" => "http://localhost/index/department/"
"departmentDetail" => array:1 [▶]
"contentCell" => "department.html.twig"
然后我需要在模板中重用变量contentCell
作为字符串,以形成类似于此的语法;
<div>{{ include ('department.html.twig'),[departmentDetail:departmentDetail]</div>
对于我的第一次尝试,我试过了,
<div> {{ include ({{ContentCell}}),[departmentDetail:departmentDetail]}} </div>
不幸的是它向我展示了这个错误
哈希键必须是带引号的字符串,数字,名称或表达式 括在括号中(意外的标记&#34;标点符号&#34;值&#34; {&#34;。
我知道如何使用变量
contentCell
作为字符串值适当吗?
答案 0 :(得分:1)
试试这个:
{% include contentCell with { departmentDetail : departmentDetail} %}
答案 1 :(得分:1)
在这里回答pass data to twig
您可以按照以下方式添加这样的模板
{{ include('YourBundle:ControllerName:yourAction.html.twig', {'variableName': yourData}) }}
或者像http://twig.sensiolabs.org/doc/tags/include.html
这样{% include 'template.html' with {'foo': 'bar'} %}
答案 2 :(得分:1)
经过最后的尝试,我发现了如何做到的诀窍
我对
采取了类似的比喻{{dump(var)}}
所以尝试这样做
{{include (contentCell,{'departmentDetail' : departmentDetail}) }}
它就像魅力一样好:)