Ich habe eine verschachtelte Tabelle mit meinem Formular zugeordnet, so dass ich ein neues Rezeptformular und verschachtelte Zutaten haben. Im Versuch, meine Form zu konvertieren simple_form zu verwenden und versuchen, es zu machen, so dass es ein einziges Etikett für die Felder und die Felder sind inline (I JavaScript-Taste mehr Zeilen Zutaten hinzufügen, wenn erforderlich)Simple_Form mehrere Zeilen mit mehreren Eingängen mit einer einzigen Beschriftung oben
EDIT:
So wurde die Etiketten in simple_form los und bekam es meist funktionieren, aber jetzt kann ich es nicht die neuen Zeilen als Zeilen hinzufügen und stellt es stattdessen als eine einzelne Spalte. Heres mein Code:
<table>
<tr>
<th>Ingredient Name</th>
<th>Info (sliced,minced,etc)</th>
<th>Amount</th>
<th>Unit</th>
</tr>
<%= f.fields_for :recipe_ingredients do |builder| %>
<%= render 'recipe_ingredient_fields', f: builder %>
<% end %>
<tr>
<td><%= link_to_add_fields "Add Ingredient", f, :recipe_ingredients,"", "Add a new Ingredient" %></td>
</tr>
</table>
Der Wirkstoff Teil:
<tr>
<td><%= f.input :ingredient, label: false %></td>
<td><%= f.input :info, label: false %></td>
<td><%= f.input :format_amount, label: false %></td>
<td><%= f.input :unit, label: false %></td>
<td><%= f.input :_destroy, as: :hidden, label: false %></td>
<td><%= link_to "Remove", '#', :onclick => h("remove_fields(this)"), class: "btn", title: "Remove Ingredient", remote: true %></td>
</tr>
Und der Javascript-Code:
function add_fields(link, association, content){
var new_id = new Date().getTime();
var regexp = new RegExp("new_" + association, "g");
$(link).before(content.replace(regexp, new_id));
}
Dies fügt es in aber alle Felder in der ersten Spalte ... I weiß, ich muss die vor Zeile anpassen, aber nicht sicher, was zur Auswahl der Zeile und nicht das Element