我有一个product
模型,通过加入模型category
与category_product
模型有多对多的关联
我有一个产品/ new.html.slim
=simple_form_for @product, html: { multipart: true } do |t|
= t.error_notification
div class="form-group"
= t.input :name, label: 'Nom',equired: true, input_html: { class: 'form-control' }
div class="form-group"
= t.input :description, label: 'Description', required: true, input_html: { class: 'form-control' }
div class="form-group"
= t.input :price, label: 'Prix', required: true, input_html: { class: 'form-control' }
div class="form-group"
= t.input :weight, label: 'Poids', required: true, input_html: { class: 'form-control' }
div class="form-group"
= t.association :categories, as: :check_boxes, label: "Catégories"
= t.button :submit, value: "Valider", class: "btn-success marge-bas"
当我提交表单时,我收到以下错误:
found unpermitted parameter: category_ids
虽然在我的ProductController中我已经允许了category_ids:
def product_params
params.require(:product).permit(
:category_ids,
:name,
:price,
:description,
:weight,
:picture,
:picture1,
:picture2,
:picture3,
)
end
当我检查params
category_ids
是一个字符串数组
"category_ids"=>["1", "2", "5", ""]
我做错了什么?
答案 0 :(得分:1)
尝试将product_params
重写为:
def product_params
params.require(:product).permit(:name, ... :picture3, :category_ids => [])
end
将category_ids
设置为允许参数列表末尾的数组应解决此错误。
希望它有所帮助!
答案 1 :(得分:0)
在完成本书“Rails,Up And Running”并添加category_ids => []
修复它时,我遇到了这个“未经许可的参数:category_ids”错误。谢谢Zoran!