我目前正在开始构建一个开源商店目录应用程序。
我通过FunShop
模型加入了FunSubcategory
和FunSubcategorization
个模型并且has_many :through
有关联。在FunShop
表单中,我以这种方式添加了Subcategory
个复选框。
<div class="field">
<%= hidden_field_tag "fun_shop[fun_subcategory_ids][]", nil %>
<% FunSubcategory.all.each do |category| %>
<%= check_box_tag "fun_shop[fun_subcategory_ids][]", category.id, @fun_shop.fun_subcategory_ids.include?(category.id), id: dom_id(category) %>
<%= label_tag dom_id(category), category.title %>
<% end %>
</div>
当我提交表单时,会出现错误Unpermitted parameters: fun_subcategory_ids
。
我对强参数知之甚少,我怀疑它存在问题。
在我的FunShop
控制器中,我有这个:
def fun_shop_params
params.require(:fun_shop).permit(:fun_subcategory_ids)
end #Most code ommited for simplicity
我也在我的FunShop模型中做到了这一点:
accepts_nested_attributes_for :fun_subcategorizations
My first web app有一个相关的存储库。
答案 0 :(得分:13)
解决。
我需要补充一下:
params.require(:fun_shop).permit(fun_subcategory_ids: [])
指定它是一个数组。