使用单一表单创建多个记录(非嵌套属性)

在我的应用程序中,我有一个思维模型,它具有内容和作者属性。

我想使用新表单一次创建多个想法。 但这不是嵌套表单的情况,因为我没有使用任何相关的模型。

请提出一些解决方案。 提前致谢!

您可以尝试使用以下解决方案

在您的视图文件中

<%= form_tag your_action_path do %> <% 4.times do |i|%> Content : <%= text_area_tag :thought_content, "", :name => "thoughts[][content]" %> Author : <%= text_field_tag :thought_author, "", :name => "thoughts[][author]" %> <% end %> <%= submit_tag "Submit" %> <% end %> 

控制器代码:

 def your_action params[:thoughts].each do |thought_params| Thought.create(thought_params) end ### #Any further code# ### end 

希望这对你有用 :)

在前端,您可以使用jquery onClick函数添加字段以获得更多想法,即您可以添加一个名为“添加更多”的链接并创建一个jquery函数,以使用动态字段名称在同一表单中添加另一个思想的字段,在后端,您可以使用

 @thoughts = Thought.create([{ author: 'Chicago', content: 'content' }, { author: 'Chicago', content: 'content' }, .......]) 

一次创建多个条目。