2013-08-05 177 views
2

我想允许嵌套的自定义参数,但不知道如何访问它们。不能允许具有强参数的自定义参数

这些都是我的PARAMS:

params=> 
    {"utf8"=>"✓", 
    "authenticity_token"=>"...", 
    "tracking"=>{"installation"=>"4", "code"=>[{"1"=>"one", "2"=>"two"}]}, 
    "action"=>"create", 
    "controller"=>"admin/trackings"} 

按照Strong Parameters documentation我尝试一些像这样的组合:

def tracking_params 
    params.require(:tracking).permit(:installation, code: []) 
end 

,但他们没有工作。我错过了什么?

回答

0
def tracking_params 
    params.require(:tracking).permit(:installation, {:code => []}) 
end 
+0

这个只返回'{“安装” =>“2”}'为tracking_params – crispychicken

0

您是否尝试过在模型层面上解决这个问题?我想你只需要添加:

accepts_nested_attributes_for :tracking 

不知道你的Rails版本是什么,但对于Rails 5.1.2的文档似乎涵盖此