3

私はこれが小枝であることを達成したい:

{{ form_widget(form.orderItems.0.enabled) }}
{{ form_widget(form.orderItems.1.enabled) }}
{{ form_widget(form.orderItems.2.enabled) }}

....

ただし、数値は変数になります。

私はこれを試しました:

{% set index = 0 %}
{{ form_widget(form.orderItems.index.enabled) }}

Error: Method "index" for object "Symfony\Component\Form\FormView" does not exist

この:

{{ form_widget(form.orderItems.{{index}}.enabled) }}

Error: Expected name or number

この:

{{ form_widget(form.orderItems.~index~.enabled) }}
Error: Expected name or number

これを達成することは可能です:(

4

2 に答える 2

3

一部の掘り下げでは、「属性」関数を使用することをお勧めします-Twig から配列キーを使用して配列値にアクセスするを参照してください。

私はそれが次のようなものになると思います

form_widget(attribute(form.orderItems, index).enabled)

残念ながら、現時点では簡単にテストすることはできませんが、正しい軌道に乗るはずです。

于 2013-08-12T10:20:36.943 に答える
1

私は今同じ問題を解決しており、変数に動的にアクセスしたいときに「予期される名前または番号のエラー」が発生します。小枝の変数の一部を動的に置き換える方法という簡単な答えが見つかりません。しかし、ここでの最初のコメントのように、最初のドットがなくても機能します。

{{ form[othervariable value].vars.label }}

ではない

{{ form.[value].name }}
于 2014-04-21T16:49:01.717 に答える