我正在使用Rails应用程序中的动态表单,我需要在单个表单提交中将可变数量的记录插入到模型中。我已经使用PHP完成了这项工作 - > MySQL / Postgres之前,但我不知道如何在Rails中做到这一点。
最终,用户应该能够创建任意数量的记录,但在下面的示例中,我将其限制为2 ...让我看看我是否可以这样做,首先......
这里是表单 - ids都获得了一个唯一的后缀,因为它们是在提交时从localStorage对象动态填充的。
new.html.erb
<%= form_for @entry, html: {id: :new_entry_form} do |f| %>
<% for i in 0..1 %>
<%= f.text_field :name, :id => 'name_#{i}' %>
<%= f.text_field :day, :id => 'day_#{i}' %>
<% end %>
<% end %>
这是关联的控制器 - 我确定这是遗漏了什么,但我不知道是什么。
def new
@entry = Entry.new
end
def create
@entry = Entry.create(entry_params)
redirect_to "http://localhost:3000/entries"
end
private
def entry_params
params.require(:entry).permit(:name, :day)
end
非常感谢任何帮助。
答案 0 :(得分:1)
按照此链接显示如何在一个表单中创建多个对象提交:
http://vicfriedman.github.io/blog/2015/07/18/create-multiple-objects-from-single-form-in-rails/