ドキュメントには、ウィジェットの名前/ IDに基づいて、symfonyの方法がcustomize a Individual fieldにあります。ここSymfony Twigは、コレクションのIndividualフィールドをカスタマイズします
{% form_theme form _self %}
{% block _product_name_widget %}
<div class="text_widget">
{{ block('field_widget') }}
</div>
{% endblock %}
{{ form_widget(form.name) }}
、_product_name_widget断片は、そのID(及び名称は、商品[名]である)PRODUCT_NAMEあるフィールドに使用するテンプレートを定義します。
これは通常のウィジェットでは機能しますが、ウィジェットがコレクション内にある場合は機能しません。余分な列のために。このように:
name="productbundle_product_type[foobar][1][value]" id="productbundle_product_type_foobar_1_value"
コレクション内でTwigカスタマイズを行う方法はありますか?
私はこのような何かを考えたが、それは動作しません:
{% for db in edit_form.list %}
{% block _productbundle_product_type_foobar_{{ db.name }}_widget %}
<div class="text_widget">
{{ block('field_widget') }}
</div>
{% endblock %}
{% endfor %}
でも次は動作しません:
{% _productbundle_product_type_foobar_1_value_widget %}
それを動作させるための方法は何ですか?
そして、 '{%block_product_tund_product_type_foobar_1 _ {{db.name}} _ widget%}'( '_1_') – cheesemacfly
を使用しない場合、以下も機能しません:' {%_productbundle_product_type_foobar_1_value_widget%} ' – user2382765
私は驚いています。 states: 'ここで、_product_name_widgetフラグメントは、idがproduct_name(かつ、nameはproduct [name])のフィールドに使用するテンプレートを定義しています。 'したがって、ウィジェットの名前が' productbundle_product_type [foobar] [1] [value] '{%block _product_tund_product_type_foobar_1_value_widget%} 'を使用できるはずです。 – cheesemacfly