【问题标题】:all my Symfony2 formbuilder entity fields are gone since upgrade升级后我所有的 Symfony2 formbuilder 实体字段都消失了
【发布时间】:2013-10-07 12:13:30
【问题描述】:

自 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 版本中)。大惊喜?哈哈……没有了。

我将返回解决方案如何解决它,我找到了一些文档...

【问题讨论】:

    标签: forms symfony entity symfony-2.3


    【解决方案1】:

    ...我发现我实际上在半年前在这里symfony2 twig referencing base widget987654321@

    结果就是这样。

    {% extends '::base.html.twig' %}
    
    {% form_theme form _self %}
    
    {% block choice_widget_expanded %}
    {% spaceless %}
        <div {{ block('widget_container_attributes') }}>
        {% for child in form %}
            {{ form_widget(child) }}
            {{ form_label(child) }}
            <br />
        {% endfor %}
        </div>
    {% endspaceless %}
    {% endblock choice_widget_expanded %}
    
    {% 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 %}
    

    【讨论】:

      猜你喜欢
      • 2012-11-30
      • 2018-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-17
      • 2019-01-11
      • 2012-11-10
      相关资源
      最近更新 更多