2016-09-18 3 views
0

나는 양식을 렌더링 다음 코드를 가지고 :Symfony2과 나뭇 가지 형태로 내 심포니 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) }} 

문제는 내가 렌더링받을 것입니다 {{form_widget (form.description)} } 내 엑스트라 var이 false 인 경우에도 다른 모든 양식 필드가 아니라 분명히 폼의 맨 아래에 분명히 버그가 있습니다. 엑스트라가 true이고 엑스트라가 false 인 경우 페이지에서 완전히 사라지는 경우에만 렌더링하는 방법? 감사합니다.

답변

1

다른 모든 양식 필드는 기본적으로 양식의 끝에 자동으로 추가됩니다. 기본적으로 {{ form_rest() }}을 트리거합니다. 이 문제를 방지하려면이 코드를 사용

{{ form_end(form, {'render_rest': false}) }} 

http://symfony.com/doc/current/reference/forms/twig_reference.html#form-end-view-variables

+0

그것은 작동합니다, 감사합니다. Btw, 폼의 맨 아래에 빈 공간이 남겨져 이전에 원하지 않는 양식 필드가 먼저 렌더링됩니다. 그걸 고치는 법도 알지 못하니? – Masha