带有额外数据的 Symfony 4 表单渲染
Symfony 4 Form rendering with extra data
我有一个位置 object 的 Symfony 表单,其中嵌入了活动列表。每个 activity 都有一个标题、状态菜单和一个注释文本字段。
我不希望用户编辑标题,但我仍想将其显示给用户。
如何从 formbuilder 的表单模板中访问此变量?
您可以通过 {{ form.vars.data.fieldName }} 示例访问表单数据:
{{ form_start(form) }}
{{ form_row(form.name) }}<br> {# assume that the Location entity has a name property #}
{{ form.vars.data.name}}<br> {# accessing the form data #}
<button class="btn">{{ button_label|default('Save') }}</button>
{{ form_end(form) }}
或使用子表单:
{{ form_start(form) }}
{{ form_row(form.name) }} {# assume that the Location entity has a name property #}
{# iterate over each existing activity and render its fields #}
{% for activity in form.activities %}
{{ activity.vars.data.title }}<br> {# accessing the form data #}
{{ form_row(activity.notes) }}<br><br> {# render a form field #}
{% endfor %}
<button class="btn">{{ button_label|default('Save') }}</button>
{{ form_end(form) }}
使用{{ dump(form) }}
将表单内容转储到屏幕上
我有一个位置 object 的 Symfony 表单,其中嵌入了活动列表。每个 activity 都有一个标题、状态菜单和一个注释文本字段。
我不希望用户编辑标题,但我仍想将其显示给用户。
如何从 formbuilder 的表单模板中访问此变量?
您可以通过 {{ form.vars.data.fieldName }} 示例访问表单数据:
{{ form_start(form) }}
{{ form_row(form.name) }}<br> {# assume that the Location entity has a name property #}
{{ form.vars.data.name}}<br> {# accessing the form data #}
<button class="btn">{{ button_label|default('Save') }}</button>
{{ form_end(form) }}
或使用子表单:
{{ form_start(form) }}
{{ form_row(form.name) }} {# assume that the Location entity has a name property #}
{# iterate over each existing activity and render its fields #}
{% for activity in form.activities %}
{{ activity.vars.data.title }}<br> {# accessing the form data #}
{{ form_row(activity.notes) }}<br><br> {# render a form field #}
{% endfor %}
<button class="btn">{{ button_label|default('Save') }}</button>
{{ form_end(form) }}
使用{{ dump(form) }}
将表单内容转储到屏幕上