如何在Rails中的对象数组中使用强参数

问题描述 投票:7回答:1

使用Rails 4.0强参数时,如何允许这样的JSON?

{
   "user":
   {
       "first_name":"Jello"
   },
   "users_to_employer":[
       {
           "start_date":"2013-09-03T16:45:27+02:00",
           "end_date":"2013-09-10T16:45:27+02:00",
           "employer":{"company_name":"Telenor"}
       },
       {
           "start_date":"2013-09-17T16:45:27+02:00",
           "end_date":null,
           "employer":{"company_name":"Erixon"}
       }
   ]
}

我尝试过:

 params.require(:users_to_employers => []).permit(
                                                 :start_date, 
                                                 :end_date => nil,
                                                 :employer => [
                                                     :company_name
                                                 ])

但是没用。

ruby-on-rails ruby strong-parameters
1个回答
17
投票

要接受对象数组,请将参数放在数组中:

params.permit(
  users_to_employers: [
    :start_date,
    :end_date,
    employer: [ :company_name ]
  ]
)
© www.soinside.com 2019 - 2024. All rights reserved.