[英]Symfony2 and Twig form rendering in if - else condition
在我的Symfony 2应用程序中,我得到了以下呈现表单的代码:
{{ form_start(form) }}
{{ form_errors(form) }}
<div class="form-group">
{{ form_label(form.title) }}
{{ form_widget(form.title) }}
</div>
<div class="form-group">
{{ form_label(form.message) }}
{{ form_widget(form.message) }}
</div>
{% if extras == true %} //this block should be rendered only if extras var is true
<div class="form-group">
{{ form_label(form.description) }}
{{ form_widget(form.description) }}
</div>
{% endif %}
{{ form_end(form) }}
问题是即使我的附加变量var为false,我也会呈现{{form_widget(form.description)}},不是所有其他表单字段,而是表单底部的某个地方,这显然是一个错误。 仅当extras为true时才如何呈现它,如果extras为false则如何使其完全从页面消失? 谢谢。
默认情况下,所有其他表单字段都会自动添加到表单的末尾。 默认情况下,它会触发{{ form_rest() }}
。 使用此代码可以防止此行为:
{{ form_end(form, {'render_rest': false}) }}
http://symfony.com/doc/current/reference/forms/twig_reference.html#form-end-view-variables
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.