Rails 4 关联模型的强参数

Rails 4 Strong parameters for associated model

我在 Rails4 应用程序中有我的用户模型并且我已经定义了

def user_params
   params.require(:user).permit(:email)
end

但我还将用户地址存储在一个单独的地址 table 中,并且我正在从一个表单中填写电子邮件和地址,因此如何在用户强参数允许方法中添加地址参数。

强参数应该是这样的:

def user_params
  params.require(:user).permit(:email, addresses_attributes: [:field1, :field2,..])
end

还要确保

user.rb

accepts_nested_attributes_for :addresses

像这样:

def user_params
   params.require(:user).permit(:email,  address: [:address_attribute])
end

看一下THISpost,我觉得对强参数的解释还不错