2016-06-01 1 views
0

작동하지 내가 나뭇 가지 파일에 렌더링 양식을 가지고 :form_label() 부울 유형

형태 :

$builder 

     ->add('text', CKEditorType::class, array (
      'config_name' => 'my_config', 
      'label' => "tracker.event.labels.text" 

     )) 

     ->add('effTime', IntegerType::class, array (
      'data' => 0, 
      'label' => "tracker.event.labels.efftime" 
     )) 

     ->add('private', CheckboxType::class, array(
      'label' => "tracker.event.private.title", 
      'data' => false, 
      'required' => false 
     )) 
    ; 

나뭇 가지 파일 :

{% form_theme formadd 'AtgpAppBundle:_Form:_form.html.twig' %} 

        {{ form_start(formadd) }} 
        {{ form_errors(formadd) }} 
        <div class ="row"> 
         <span class="col-md-2"> 
          {{form_label(formadd.text)}} 
         </span> 
         <span class="col-md-10"> 
          {{form_errors(formadd.text)}} 
          {{form_widget(formadd.text)}} 
         </span> 
        </div> 
        <div class="row"> 
         <span class="col-md-2"> 
          {{form_label(formadd.effTime)}} 
         </span> 
         <span class="col-md-10"> 
          {{form_errors(formadd.effTime)}} 
          {{form_widget(formadd.effTime)}} 
         </span> 
        </div> 
        <div class="row"> 
         <span class="col-md-2"> 
          {{form_label(formadd.private)}} 
         </span> 
         <span class="col-md-1"> 
          {{form_errors(formadd.private)}} 
          {{form_widget(formadd.private) }} 
         </span> 
         <span class="col-md-9"> 
          {{ "tracker.event.private.help" |trans }} 
         </span> 
        </div> 
        {{ form_end(formadd) }} 

모든 것이 잘 작동, 마지막 행을 제외하고

"개인"의 레이블이 있어야하는 col-md-2는 비어 있습니다. 어떤 이유로 form_widget 들어

내부 스팬의 다른

<div class="row"> 

생성 "클래스 = COL-MD-1"라벨과 내부 체크 박스

.

Here's how the whole row renders

나는 제대로 올바른 위치에 표시되는 라벨을하고 싶습니다. form_label() 명령은 무시됩니다. 쓰지 않으면 같은 것을 렌더링합니다.

어떻게하면됩니까? 내 코드에 어떤 문제가 있습니까?

당신에게

편집 감사 : 난 그냥 false로 라벨 값을 설정하고 나뭇 가지에 직접 쓸 수 있는지 알아 냈어. 그러나 form_label 명령이 부울 값으로 무시되는 이유는 아직 알 수 없습니다.

답변

0

있어야 할 곳에 모든 라벨은 tracker.event.labels.XXXXX 같다.

우리는이를 읽을 수 있습니다

당신은 아무것도 표시되지 않습니다 체크 박스/라디오 필드 form_label()를 호출, 부트 스트랩 형태의 테마를 사용하여 수동으로 필드를 렌더링합니다. 부트 스트랩 내부 구조 때문에이 레이블은 이미 form_widget()에 의해 표시됩니다. 이에

:

그래서 내가 할 필요가 무엇인지,이에서 체크 박스 - 위젯 블록을 재정의했다이 구문은 번역을위한

{% block checkbox_widget %} 
     <input type="checkbox" {{ block('widget_attributes') }}{% if value is defined %} value="{{ value }}"{% endif %}{% if checked %} checked="checked"{% endif %} /> 
{% endblock %} 
0

추측 : 마지막이기 때문에 tracker.event.private.title하지 그것이 내가 the documentation 내 질문에 대한 답을 발견 tracker.event.labels.private.title

+0

, 그것은 할 수 없습니다 관련성이있다. 다른 것과 일치하도록 변경할 수는 있지만 문제가 해결되지는 않습니다. – abernard

관련 문제