Twig 细枝嵌入块在循环中时不工作?
我需要在我的页面中放置一个细枝模板,然后在其中放置另一个细枝模板 在page.twig中:Twig 细枝嵌入块在循环中时不工作?,twig,Twig,我需要在我的页面中放置一个细枝模板,然后在其中放置另一个细枝模板 在page.twig中: {% embed "parent.twig" %} {% block something %} {% include "child.twig" %} {% endblock %} {% endembed %} 在parent.twig中: {% set array = ['', '', ''] %} <div class="parent"> {% for i in
{% embed "parent.twig" %}
{% block something %}
{% include "child.twig" %}
{% endblock %}
{% endembed %}
在parent.twig中:
{% set array = ['', '', '']
%}
<div class="parent">
{% for i in array %}
<div class="parent__item">
{% block cardBoard %}
{% endblock %}
</div>
{% endfor %}
</div>
{%set数组=['','','']
%}
{数组%中的i的%1}
{%block carboard%}
{%endblock%}
{%endfor%}
问题是,当块在循环中时,它不工作。我可以随心所欲地编辑page.twig,但如果可能的话,我宁愿不更改parent.twig,因为它会被其他应用程序使用 为什么要在for循环中放置块?不能使用相同的名称定义两个块。 在您的情况下,它将尝试将此内容放入模板中3次:
<div class="parent__item">
{% block cardBoard %}
{% endblock %}
</div>
{%block carboard%}
{%endblock%}
这将创建一个500服务器错误:
块“Car纸板”已在第“”行的:parent.twig中的第“”行定义
如果确实希望根据数组中的值生成内容,请将块的开头和结尾放在for循环之外。
例如:
{% set array = ['', '', '']%}
<div class="parent__item">
{% block cardBoards %}
{% for i in array %}
<div class="cardBoard{{ i }}>
</div>
{% endfor %}
{% endblock %}
</div>
{%set数组=['','']}
{%block cardBoards%}
{数组%中的i的%1}
为什么要在for循环中放置一个块?不能使用相同的名称定义两个块。
在您的情况下,它将尝试将此内容放入模板中3次:
<div class="parent__item">
{% block cardBoard %}
{% endblock %}
</div>
{%block carboard%}
{%endblock%}
这将创建一个500服务器错误:
块“Car纸板”已在第“”行的:parent.twig中的第“”行定义
如果确实希望根据数组中的值生成内容,请将块的开头和结尾放在for循环之外。
例如:
{% set array = ['', '', '']%}
<div class="parent__item">
{% block cardBoards %}
{% for i in array %}
<div class="cardBoard{{ i }}>
</div>
{% endfor %}
{% endblock %}
</div>
{%set数组=['','']}
{%block cardBoards%}
{数组%中的i的%1}
你想干什么?预期的结果是什么?你想做什么?预期的结果是什么?