这是我的ajax请求:
$.ajax({
url: "/menu_items",
method: "post",
data: {
menu_items: [
{"id":3,"content":"first"},
{"id":4,"content":"first"},
{"id":5,"content":"second"}
]
}
})
我想在menu_items数组中允许id
和content
,
我读了docs。
所以我试试
params.require(:menu_items).permit({menu_items: [[:id, :content]]})
或
params.require(:menu_items).permit({menu_items: [:id, :content]})
但是没有用,所以我该怎么做?
更新:这是我的控制器:
class MenuItemsController < ApplicationController
def create
puts "----------------"
puts menu_items_param
puts "-----------"
end
private
def menu_items_param
params.require(:menu_items).permit(menu_items: [:id, :content])
end
end
在控制台中,它会打印
Processing by MenuItemsController#create as */*
Parameters: {"menu_items"=>{"0"=>{"id"=>"3", "content"=>"first"}, "1"=>{"id"=>"4", "content"=>"first"}, "2"=>{"id"=>"5", "content"=>"second"}}}
----------------
Unpermitted parameters: 0, 1, 2
{}
-----------
答案 0 :(得分:1)
params.require(:menu_items).permit(:id, :content)
试试这个。