我有一个名为 的模型Book
,我想调整标准Book#new
以显示 10 本书的字段,这样就可以一次创建 10 本书,而不仅仅是一本。
我查看了这个问题,发现如果我添加10.times
到我的表单中,我可以重复该表单。但是,我没有正确执行此操作,因为保存了一条新记录,但所有字段均为空。
我想做的是:
- 允许用户一次输入最多 10 本书然后保存
- 如果用户只填充了三个书籍记录,则只创建三个(并忽略其他具有空值的表单中的七个记录)
我的观点:
<%= 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