使用单个表单创建多个记录(非嵌套属性)
Create multiple records using single form (Not nested attributes)
在我的应用程序中,我有一个具有内容和作者属性的思想模型。
我想使用新的形式一次创建多个想法。但这不是嵌套表单的情况,因为我没有使用任何关联模型。
请提出一些解决方案。
提前致谢!
在前端,您可以使用 jquery onClick 函数添加更多想法的字段,即您可以添加一个名为 "add more" 的 link 并创建一个 jquery 函数来添加具有动态字段名称的相同形式的另一个想法的字段&在后端你可以使用
@thoughts = Thought.create([{ author: 'Chicago', content: 'content' }, { author: 'Chicago', content: 'content' }, .......])
一次创建多个条目。
您可以尝试以下解决方案
在您的视图文件中
<%= 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 函数添加更多想法的字段,即您可以添加一个名为 "add more" 的 link 并创建一个 jquery 函数来添加具有动态字段名称的相同形式的另一个想法的字段&在后端你可以使用
@thoughts = Thought.create([{ author: 'Chicago', content: 'content' }, { author: 'Chicago', content: 'content' }, .......])
一次创建多个条目。
您可以尝试以下解决方案
在您的视图文件中
<%= 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
希望对你有用:)