自 symfony2 2.0 以来,表单构建器类型实体是否发生了巨大变化?因为这段代码用来返回我所有类型为“BizTVContainerManagementBundle:ContainerSize”的实体的列表,现在什么都不返回,除了那个空值的东西......
没有错误信息。我使用 {{ form_widget(form) }} 呈现表单,因此视图中没有任何变化......
$builder
->add('mainContent', 'entity', array(
'label' => 'Välj storlek på mainContent (kan inte ändras i efterhand). Endast de företag som har denna storlek på sitt mainContent kommer att få åtkomst till denna layoutmall. ',
'property' => 'select_label',
'class' => 'BizTVContainerManagementBundle:ContainerSize',
))
* 更新 *
Soo... 事实证明它毕竟在视图中,因为我对另一个表单控件进行了一些自定义渲染(不是我丢失数据的那个)。
{% extends '::base.html.twig' %}
{% form_theme form _self %}
{% block choice_widget %}
{% spaceless %}
{% if expanded %}
<div {{ block('widget_container_attributes') }}>
{% for child in form %}
{{ form_widget(child) }}
{{ form_label(child) }}
<br /> {# <-------- Here's my addition to the template #}
{% endfor %}
</div>
{% else %}
<select {{ block('widget_attributes') }}{% if multiple %} multiple="multiple"{% endif %}>
{% if empty_value is not none %}
<option value="">{{ empty_value|trans }}</option>
{% endif %}
{% if preferred_choices|length > 0 %}
{% set options = preferred_choices %}
{{ block('widget_choice_options') }}
{% if choices|length > 0 and separator is not none %}
<option disabled="disabled">{{ separator }}</option>
{% endif %}
{% endif %}
{% set options = choices %}
{{ block('widget_choice_options') }}
</select>
{% endif %}
{% endspaceless %}
{% endblock choice_widget %}
{% block contents %}
<h1>Skapa ny skärmlayout</h1>
<div class="t_wrap">
<form action="{{ path('createLayoutTemplate') }}" method="post" {{ form_enctype(form) }} novalidate>
{{ form_widget(form) }}
<p>
<button type="submit" class="green">Skapa</button>
</p>
</form>
<p>
När du har redigerat formulär- och vy-filerna (som skapas då du klickar "skapa"), och testat att de fungerar buggfritt så behöver du klicka 'edit' på denna template och kryssa i "produktion", först då blir mallen valbar vid skapande av innehåll.
</p>
<a href="{{ path('listLayoutTemplates') }}"><button>Tillbaka</button></a>
</div>
{% endblock %}
而且我发现这需要在 2.3 版本的 symfony2 中以不同的方式完成(我生活在 2.0 版本中)。大惊喜?哈哈……没有了。
我会回来解决如何解决它,我找到了一些文档......