0
这个§ of the Symfony2 documentation显示了一个非常棒的技术来定制一个单独的领域。我使用了很多,但有一个特殊Type
为此,我有一个很难做的定制:在CollectionType()
定制集合本身是很容易的,你可以做这样的事情:如何自定义一个CollectionType()项目?
{% block _mynamespace_mybundle_mytype_mycollectionfield_row %}
{% if prototype is defined %}
{% set attr = attr|merge({'data-prototype': form_widget(prototype) }) %}
{% endif %}
{% spaceless %}
<ul {{ block('widget_container_attributes') }}>
{% spaceless %}
{{ form_errors(form) }}
{% for child in form %}
<li>
{{form_widget(child)}}
</li>
{% endfor %}
{% endspaceless %}
{{ form_rest(form) }}
</ul>
{% endspaceless %}
{% endblock %}
但是,您如何定制集合的每个元素?你怎么能使用Twig来自定义data-prototype
(data-prototype
是一个特殊的属性,用于添加js的新项目)?
我试图做这样的事情(为data-prototype
):
{% block _mynamespace_mybundle_mytype_mycollectionfield_$$name$$_row %}
customization ok!
{% endblock %}
但我得到的错误,因为我不知道如何逃脱$
关于项目,我试过很多东西:
{% block _mynamespace_mybundle_mytype_mycollectionfield_item_subfield_row %}
customization ok!
{% endblock %}
{% block _mynamespace_mybundle_mytype_mycollectionfield_element_subfield_row %}
customization ok!
{% endblock %}
他们都没有工作。
使用Twig自定义数据原型的含义是什么? –
我更新了我的答案 – greg0ire