我有PizzaTopping連接表的Pizza模型和Topping模型。披薩有許多配料,頂部屬於披薩。我是Rails的新手。如何使用複選框創建嵌套窗體的多個記錄
我的問題是試圖瞭解如何創建一個嵌套的表單,將多個記錄添加到我的PizzaTopping連接表中。我還需要以複選框的形式顯示澆頭。
<div class="form-horizontal">
<%= form_for(@pizza) do |f| %>
混亂#1:
要我理解這是爲了顯示覆選框,該工作的完整模型,但我對控制器如何接受這個困惑,並在此加入記錄與披薩相關的配料表。我想單獨的記錄(而不是即摘心IDS的陣列的屬性):
PizzaTopping.create(id: 1, pizza_id: 1, topping_id: 1)
PizzaTopping.create(id: 2, pizza_id: 1, topping_id: 2)
PizzaTopping.create(id: 3, pizza_id: 1, topping_id: 3)
..
<div class="form-group">
<%= f.collection_check_boxes(:topping_ids, Topping.all, :id, :name) do |b| %>
<%= b.check_box %>
<%= b.label %>
<% end %>
</div>
或混亂#2:
這是一個嵌套的形式,但如何我是否可以從Topping模型的複選框中獲得澆口,並且如上所示,我如何在控制器中編寫此代碼以在連接表中添加記錄。
<div class="form-group">
<%= f.fields_for :toppings do |builder| %>
<%= builder.check_box %> // confused what I would even do next
<% end %>
</div>
...
<%= f.submit %>
<% end %>
</div>
所以,你想創建在同一個形式的披薩和澆頭? –
我有一個單獨的模型,可以添加配料和去除澆頭。爲此,我只想創建一個比薩餅,創建一個表格,以Topping模型中的所有澆頭的複選框格式列出。然後能夠用它的澆頭儲存披薩 – ravip0711