【发布时间】:2016-02-06 10:16:42
【问题描述】:
我是 RoR 的新手。 我的问题是关于更新关联的 Active Model 的属性。
class User
has_many :toys
end
class Toy
belongs_to :user
end
我有一个用户表单的页面,我可以在其中更新用户的属性,以及相关 user_devices 的某些属性:
<%= f.text_field :age %> # from user
<%= f.text_field :email %> # from user
....
<%= f.check_box :is_new %> # from toy!!
当我发布表单并使用 update_attributes() 更新所有属性时,它显示“ActiveModel::MassAssignmentSecurity::Error”
@user.update_attributes(params[:user]) # it gives ActiveModel::MassAssignmentSecurity::Error
另一个问题是,我不知道如何命名“is_new”属性,因为它在玩具表中。应该是 :toys_is_new 吗?
我也希望更新相关玩具的属性。你能帮我解决这个问题吗?
【问题讨论】:
-
感谢您的建议。我发现this link 也有很大帮助。
-
顺便说一句,是否可以在 rails 3.2.13 上使用?这个版本有什么解决方法吗?
标签: ruby-on-rails join activemodel associated-object