Ruby on rails 强参数中的嵌套数组

Ruby on rails 强参数中的嵌套数组,ruby-on-rails,model-view-controller,ruby-on-rails-6,Ruby On Rails,Model View Controller,Ruby On Rails 6,我有通过ajax加载的输入,并使用javascript以其他形式插入,其中包含以下字段: <input name="project[config][service][3][web][auth]" type="checkbox"> 但它不起作用。 在控制台中,我将此作为项目参数[:config] 试着这样做,它应该可以工作: params.require(:project).permit( :title, :description, co

我有通过ajax加载的输入,并使用javascript以其他形式插入,其中包含以下字段:

<input name="project[config][service][3][web][auth]" type="checkbox">
但它不起作用。 在控制台中,我将此作为项目参数[:config]


试着这样做,它应该可以工作:

params.require(:project).permit(
       :title, 
       :description, 
       config: {
         service: [
           :domains,
           web: [:auth, :user, :pass]
         ]
       },
       documents: []
     )

是的,谢谢!但是你能解释一下我的手机为什么出了问题吗@Evolutio问题在服务方面:{[]=>[definition。当键为空数组时添加的哈希。您不必这样做。Rails通过键中的数字识别数组,并为您执行数组处理。
params.require(:project).permit(
        :title,
        :description,
        config: [
            service: {
                [] => [
                    :domains,
                    web: [
                        :auth,
                        :user,
                        :pass
                    ]
                ]
            }
        ],
        documents: []
      )
{"service"=><ActionController::Parameters {"3"=><ActionController::Parameters {} permitted: true>} permitted: true>}
{
  "service" => { 
    "3" => {
      "web" => {
        "auth"=>"on",
        "user"=>"asdasdasdasda",
        "pass"=>"asdasdasd"
      }
    }
  }
}
params.require(:project).permit(
       :title, 
       :description, 
       config: {
         service: [
           :domains,
           web: [:auth, :user, :pass]
         ]
       },
       documents: []
     )