という名前のモデルがあり、10冊の本のフィールドを表示Book
するように標準を調整してBook#new
、1冊ではなく10冊を一度に作成できるようにします。
この質問を見て、フォームに追加すればフォームを繰り返すことができることがわかりました10.times
。しかし、新しいレコードが保存されているため、正しく実行しませんでしたが、すべてのフィールドがnullになっています。
私がしたいことは次のとおりです。
- ユーザーが一度に最大10冊の本を入力して保存できるようにする
- ユーザーが3つの本のレコードのみを入力する場合は、3つだけを作成します(null値を持つ他の形式の7つのレコードは無視します)
私の見解:
<%= simple_form_for(@book) do |f| %>
<%= f.error_notification %>
<% 10.times do |index|%>
<%= f.input :title %>
<%= f.association :book_category %>
<% end %>
<%= f.submit %>
<% end %>
私のコントローラーはスキャフォールディングコードから変更されていません:
def new
@book = Book.new
end
def create
@book = Book.new(params[:book])
end