允许数组中的参数(具有相同模型的多个实例的表单)

时间:2019-02-02 11:43:06

标签: ruby-on-rails forms

我有一个表格,其中显示了模型的所有条目

<%= form_tag some_path(@entity), method: :put do |f| %>
  <%  @skill_levels.each_with_index do |skill_level, index| %>
    <%= fields_for "skill_level[#{skill_level.id}]", skill_level do |skill_level_fields| %>
      <%= f.text_field :name %>
      <%= f.hidden_field :id %>
    <% end %>
  <% end %>
<% end %>

这给了我以下参数

params.require(:skill_level)
<ActionController::Parameters 
  {"1"=><ActionController::Parameters {"name"=>"value", "entity_id"=>"", "id"=>"1", "_destroy"=>"false"} permitted: false>,
  "2"=>{"name"=>"value", "entity_id"=>"", "id"=>"2", "_destroy"=>"false"}, 
  "3"=>{"name"=>"value", "entity_id"=>"", "id"=>"3", "_destroy"=>"false"}} permitted: false>

我该如何正确允许数组中的这些参数?我已经尝试过许多这样的变体

params.require(:skill_level).permit([])
params.require(:skill_level).permit([:name,:id,:entity_id])

我们非常感谢您的帮助。谢谢

0 个答案:

没有答案