2014-01-07 2 views
0

양식 필드가 포함 된 여러 개의 "li"요소가있는 양식이 있습니다. 단 하나의 변수 만 여러 개의 placee에서 한 단어입니다. 예 :반복 된 블록을 양식에 전달

li 
    = f.label :answer_tax, 'Tax' 
    = f.text_field :answer_tax, 
    'ng-model' => 'Form.tax', 
    'ng-pattern' => '{{pattern}}', 
    'ng-focus' => 'initFields(Form.tax)', 
    'ng-blur' => 'updateScore(Form.tax, "tax")' 

li 
    = f.label :answer_chase, 'Chase' 
    = f.text_field :answer_chase, 
    'ng-model' => 'Form.chase', 
    'ng-pattern' => '{{pattern}}', 
    'ng-focus' => 'initFields(Form.chase)', 
    'ng-blur' => 'updateScore(Form.chase, "chase")' 

각 단어를 배열에서 가져 와서 양식 필드를 생성하는 부분을 만들고 싶습니다. 이 일을 수행 할 수있는 가장 좋은 장소는 어디입니까 (도우미)? 시간 내 주셔서 감사합니다.

답변

1

보기에서 그냥 할 수 있습니다. 더 단순하다고 생각하면 부분적으로 사용할 필요가 없습니다. (내가 HAML을 사용하고 있다고 가정 했습니까? 맞다면 % li 태그에?) :

- %w{ tax chase }.each do |field_name| 
    %li 
    = f.label "answer_#{field_name}".to_sym, field_name.capitalize 
    = f.text_field "answer_#{field_name}".to_sym, 
    'ng-model' => "Form.#{field_name}", 
    'ng-pattern' => '{{pattern}}', 
    'ng-focus' => "initFields(Form.#{field_name})', 
    'ng-blur' => "updateScore(Form.#{field_name}, \"#{field_name}\")" 
+0

놀랍습니다. 나는 슬림하지만 기본적으로 동일합니다. 도와 줘서 고마워. – sturoid

관련 문제