我的rails版本是5,我有这样的请求参数,
{ "segment": {
"name": "test",
"new_filters": [
{"criteria": "sad",
"other_keys": [{"key": "value"}]
},
{"criteria": "sad",
"other_keys1": [{"key1": "value1"}]
}]
}
}
我一直在允许在rails控制器中使用new_filter参数, 我正在尝试以下代码,
params.require(:segment).permit(:name, :people_count, new_filters: [])
,仍然出现错误。但是,在new_filter键中具有字符串数组时,情况并非如此。 例如:[“ sad”,“ asdasd”]。如何将嵌套结构作为列入白名单的属性?
答案 0 :(得分:1)
在用于细分的模型文件中,尝试添加线
accepts_nested_attributes_for :new_filters
这应该允许您传递那些属性。
https://api.rubyonrails.org/classes/ActiveRecord/NestedAttributes/ClassMethods.html
答案 1 :(得分:1)
这在测试您的属性时对我有用:
seq(2, n - 1)