我不确定我在这里做错了什么。我需要发布一个包含一个对象数组的json对象+一个额外的根字段。所以对于这段代码:
{
"root_field": "somedata",
"myobjects": [
{
"attr1": "1",
"attr2": 2",
"attr3": "3"
},
{
"attr1": "1",
"attr2": "2",
"attr3": "3"
}
]
}
我将此作为强参数的代码,允许所有myobjects
进入,但无法传递root_field
,这在我的应用程序中很重要。
def my_params
params.require(:root_field)
params.require(:myobjects).map do |e|
ActionController::Parameters.new(e.to_hash).permit(:attr1,:attr2,:attr3)
end
end
有什么想法吗?
答案 0 :(得分:2)
如果您希望将root_field
列为标量值,则应为
params.permit(:root_field)
params.permit(:myobjects => [:attr1,:attr2,:attr3])