2016-08-11 4 views
2

繭を使用して入れ子になった属性を追加しています。私は、私の見解でコードを次ていますテーブルに繭を使用してフィールドを追加できません

<table> 
    <thead> 
    <tr> 
    <th>Title</th> 
    <th>Action</th> 
    </tr> 
    </thead> 
    <tbody id="emergency_personnels"> 
    <%= f.fields_for :emergency_personnels do |emergency_personnel| %> 
     <%= render 'emergency_personnel_fields', f: emergency_personnel %> 
    <% end %> 
    </tbody> 
</table> 
<%= link_to_add_association 'Add emergency personnel', f, :emergency_personnels, data: {"association-insertion-node" => "tbody#emergency_personnels", "association-insertion-method" => "append"} %> 

それが正常に動作する必要がありますが、新しいフィールドは、テーブルのtbodyの下に追加されていない代わりに、それは表の外に表示されます。

誰でも解決策を提案できますか?おかげで繭のドキュメントを1として

答えて

1

insertion-behaviour

デフォルトの動作

デフォルトの挿入位置は、現在のコンテナの後ろにあります。

カスタムの場所に追加したい場合は、我々は2つのデータ属性によって、これを達成することができます:

association-insertion-method

association-insertion-node場所の関係でそれを追加に追加するにノード付き

ここに例があります。

$(document).ready(function() { 
    $("#owner a.add_fields"). 
     data("association-insertion-method", 'append'). 
     data("association-insertion-node", '#parent_table'); 
}); 

注:

あなたがある特定の場所にテンプレートを追加する場合:

  • ないリンクの直接の親または兄弟
  • リンクが複数回表示されます - のために例深くネストされたフォームの内部

association-insertion-nodeを関数として指定する必要があります。たとえば、

$(document).ready(function() { 
    $(".add_sub_task a"). 
     data("association-insertion-method", 'append'). 
     data("association-insertion-node", function(link){ 
     return link.closest('.row').next('.row').find('.sub_tasks_form') 
     }); 
}); 
+0

いくつかの調整がありました。ありがとう –

+0

私は答えを更新するつもりを共有してください.... –

関連する問題