我正在开发一个 Rails 应用程序,其中有两个模型User
和Client
.
User
由设计支持并负责身份验证并has_one
Client
保存给定用户的客户端详细信息。这种关系始终存在,因为我确保Client
在创建User
.
对于我正在使用的管理区域ActiveAdmin
。现在,当我尝试User
通过管理界面创建一个时,我使用这样的表单:
form do |f|
f.inputs :username, :email, :password
f.inputs :name => "Client", :for => :client do |client|
client.inputs :name, :address, ...
end
end
问题是 要么 要么被保存User
并且Client
页面被重新加载并出现验证错误。我检查了 rails 控制台,WARNING: Can't mass-assign protected attributes: client_attributes
每次尝试创建User
.
我已经搜索了这个问题,发现为了允许批量分配,必须为允许分配attr_accessible
的每个字段定义。因此,我已将此指令放入Client
上述每个字段的模型中,并且消息不断出现,从而阻止模型正确保存。
有人对此有任何线索吗?