2016-07-23 1 views
0

간단한 양식이 있습니다. 내가 협회 양식을 추가하기를 원할 때까지는 모든 것이 공정하게 작동했습니다. 협회 자체가 잘 작동하므로 건너 뛸 것입니다. 데이터 저장은 작동합니다. 이 문제는 예외 상황에서 입력 클래스를 제어합니다.간단한 양식 연결이 기본 입력 클래스와 충돌합니다.

보시다시피

<%= simple_form_for @fabmoment do |f| %> 
 
     \t 
 
    <%= f.input_field :title %> 
 
    <%= f.label :title %> 
 
    <%= f.error :title %> 
 
    <%= f.input_field :description, rows: 7 %> 
 
    <%= f.label :description %> 
 
    <%= f.error :description %><br><br> 
 
    <%= f.association :machines, as: :check_boxes, 
 
           :label_method => lambda { |m| " #{m.name}" } %> 
 
    
 
<% end %>
내가 무엇을 넣어 곳에서 매우 구체적이다,이 때문에 내 CSS 라이브러리 (W3.CSS)이다. 문제는 내 이니셜 라이저에서 입력의 기본값으로 "w3-input" 클래스를 둡니다. 하지만 이것은 내 연결 체크 박스에 대해 작동하지 않습니다. 지금 나는 라벨과 입력 체크 박스가 인라인이 아니라는 것을 안다.

"w3-input" 클래스가 없을 경우에는 그렇지 않습니다. 하지만 제거 할 수는 없으며 item_wrapper_tagitem_wrapper_class만큼 깊게 갈 수 있습니다.

이것은 매우 성가신 사람입니다. 나는 이것을 어제 몇 시간 동안 바빴다.

는 왜 다음과 같은 일을 할 수 없습니다 : 그것은 밝혀

<%= f.association :machines, as: :check_boxes do |m| %> 
 

 
    <%= m.check_box :machine_id, class: 'w3-check' %> 
 
    <%= m.label :name, class: 'w3-validate' %> 
 

 
<% end %>

답변

0

HTML을 input_htmllabel_html으로 태그를 simple_form 속성을 통과 할 수있는 옵션이 있습니다. 당신은 위의 문제에 대한 Here 에서 모든 옵션을 찾을 수 있습니다 당신은 그 체크 박스의 라벨 모두의 기계 체크 박스의 모든 및 w3-validatew3-check 클래스를 추가합니다

<%= f.association :machines, as: :check_boxes, input_html:{class: 'w3-check'} ,label_html: {class: 'w3-validate'}%> 

이 뭔가를 할 수 있으며, 당신은 할 수 그에 따라 스타일

+0

input_html로 마침내 항목의 입력 태그에 연결할 수 있습니다. 고마워, 내 문제의 80 %를 해결합니다. 그래도 레이블 태그에 연결할 수 없습니다. 이 label_html은 체크 박스 목록 위의 라벨을 타겟팅합니다. 어느 쪽이 좋습니까?하지만 실제로 'w3-validate'를 추가하려면 하나의 항목 레이블이 필요합니다. –

+0

당신은'wrapper_html : {class : 'checkbox_container'}'를 사용할 수 있습니다.이 클래스는 모든 체크 상자의 부모에이 클래스를 추가 할 것입니다. 그런 다음'.checkbox_container label {border : 1px solid gray}'에 의해'css'를 적용 할 수 있습니다. 이것은'css '에 해당하는 모든 레이블에이 CSS를 적용 할 것입니다. –

+0

감사합니다. 나는 약간 성가신 것을 알지만, 그렇게하지 않는 다른 방법이 없다면 그것이해야 할 것이라고 가정합니다. sass와 함께 btw 거기에 미리 정의 된 클래스 CSS 선택기로 확장하는 방법 아닌가요? 어쨌든 나는 이걸 스스로 들여다 볼 수있다. –

관련 문제