我到处搜索过,但是没有人知道是否有可能在rails中使用强参数来允许数组和数组吗?我的代码如下所示:
params.require(:resource).permit(:foo, :bar => [[:baz, :bend]])
这给了我:
我也尝试过:
params.require(:resource).permit(:foo, :bar => [[]])
params.require(:resource).permit(:foo, :bar => [][])
params.require(:resource).permit(:foo, :bar => [])
但是这些都会给我带来无效的参数错误或不处理参数。
预先感谢您的任何帮助
最佳答案
看code,我认为这是不可能的。您必须将第二层展平。
def permit(*filters)
params = self.class.new
filters.each do |filter|
case filter
when Symbol, String
permitted_scalar_filter(params, filter)
when Hash then
hash_filter(params, filter)
end
end
unpermitted_parameters!(params) if self.class.action_on_unpermitted_parameters
params.permit!
end
关于ruby-on-rails - 允许在Rails中具有强参数的数组的数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30984502/