在rails 5中用一种形式更新一个模型的许多寄存器的最佳做法是什么?

时间:2016-11-24 16:56:04

标签: ruby-on-rails ruby-on-rails-5

我认为它应该比我使用的方式更简单:

在视图中:

<%=form_tag({action:"update_many")%>
  <% @revisions.each do |r| %>
    <%= fields_for "revision[]",r do |revision_builder| %>
      <%= revision_builder.text_field :any_field %>
    <%end%>
  <%end%>
<%end%>

在控制器中:

def update_many
  @revisions=Revision.where(...)
  @revisions=@revisions.update(params[:revision].keys,params[:revision].values)
end

(如果我想使用params.require(:revision_X).permit(:prevision_Y: [:field,:field]),我需要在fields_for之后添加另一个form_tag ...但这是另一个历史记录)

我可以使用form_for更新模型的许多记录吗?使用一行指令......或其他东西

由于

0 个答案:

没有答案