Rails嵌套表单属性不被允许

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

我有一个名为团队组的模型和一个嵌套的模型salesforce_user_roles,我的表单向我发送以下信息

<ActionController::Parameters {"create_salesforce_user"=>"0", "delete_salesforce_user"=>"1", 
"salesforce_user_roles_attributes"=>
<ActionController::Parameters {
"0"=><ActionController::Parameters {"id"=>"11", "name"=>"Director, Channel Sales", "role_id"=>"00E7F000001AY", "_destroy"=>"false"}>, 
"1577184453507"=><ActionController::Parameters {"name"=>"Eastern Sales Team", "role_id"=>"00E7F0000016xFLUAY", "_destroy"=>"false"} } >} >

为了安全起见,我只允许几个参数。我正在使用params.require(:team_group).permit(:name, :salesforce_user_roles_attributes)允许嵌套模型属性,但它没有在数据库中保存任何内容。如何允许嵌套模型参数?

ruby-on-rails nested-forms
1个回答
1
投票

您可以确认,是否在模型中添加了accepts_nested_attributes_for

如果是,则遵循此做法以允许他们:

params.require(:team_group).permit(:name, salesforce_user_roles_attributes: [:id, :name, :role_id, :_destroy])

谢谢

© www.soinside.com 2019 - 2024. All rights reserved.