2016-06-22 4 views
3

私の関連付けチェックボックスからテーブルを生成しています。各行には、チェックボックスといくつかの追加情報が表示されます。collection_check_boxesから外部ラベルを削除します

%table 
= f.collection_check_boxes :task_ids, @my_collection, :id, :label do |r| 
    %tr 
    %td= r.label 
    %td= r.check_box 
    %td= r.object.due_date 

しかし、出力は次のようになりますので、これは私のHTMLを壊す:もちろん

<table> 
<span><label for="task_ids_1"> <--- I want to remove this... 
    <tr> 
    <td><label for="task_ids_1">My Name</label></td> 
    <td><input type="checkbox" value="8" name="user[task_ids][]" id="task_ids_1" /></td> 
    <td>I'm in.</td> 
    </tr> 
</label></span> <--- ...and this! 
</table> 

私はlabel: falseを設定しようとしましたが、このオプションは効果がありません。どうすれば外側のラベルを取り除くことができますか?

答えて

1

私は最終的にほぼ一年後にそれを自分で考え出しました。 boolean_style: :inlineと呼ばれるオプションがあります。 (あなたはそれが によって自分自身を入れ子に作っているので)あなたはそれがインラインになりたいので

あなたはboolean_styleを使用する必要があります:

%table 
    = f.collection_check_boxes :task_ids, @coll, :id, :label, boolean_style: :inline do |r| 
    %tr 
     %td= r.label 
     %td= r.check_box 
     %td= r.object.due_date 

私はここで解決策と説明https://github.com/plataformatec/simple_form/issues/1266が見つかりました:インライン設定。

関連する問題