尽管在attr_accessible中指定,但无法以嵌套形式批量分配属性

时间:2011-08-07 01:15:27

标签: ruby-on-rails ruby-on-rails-3 nested-forms nested-attributes

所以我有一些模特用户和回忆录。

User.rb

  has_many :memoirs
  accepts_nested_attributes_for :memoirs

  attr_accessible :email, :password, :password_confirmation, :memoir_attributes
  attr_accessor :password
  before_save :encrypt_password

  validates_confirmation_of :password
  validates_presence_of :password, :on => :create
  validates_presence_of :email
  validates_uniqueness_of :email

和Memoir.rb

  belongs_to :user
  attr_accessible :user_id, :content, :birth, :death, :name, :subdomain

  validates_uniqueness_of :subdomain

然而,当我保存(回忆录嵌套在用户表格中)时,我收到此消息并且回忆录未保存:“警告:无法大量分配受保护的属性:回忆录”

困惑

1 个答案:

答案 0 :(得分:3)

你有

has_many :memoirs

accepts_nested_attributes_for :memoirs

肯定是

attr_accessible :email, :password, :password_confirmation, :memoir_attributes

应该是

attr_accessible :email, :password, :password_confirmation, :memoirs_attributes

如果我有错,请检查您的日志文件。这应该告诉你问题是什么