Ruby on rails 魔法宝石与你有一种联系

Ruby on rails 魔法宝石与你有一种联系,ruby-on-rails,ruby,sorcery,Ruby On Rails,Ruby,Sorcery,现在我使用以下代码: 用户拥有一个用户 用户=>:用户名,:电子邮件,:加密密码,:salt,:手机 User\u extra=>:用户id、日期、出生日期、性别、地址 user.rb class User < ActiveRecord::Base authenticates_with_sorcery! attr_accessible :username, :email, :password, :password_confirmation, :first_name,

现在我使用以下代码:

用户拥有一个用户

用户=>:用户名,:电子邮件,:加密密码,:salt,:手机

User\u extra=>:用户id、日期、出生日期、性别、地址

user.rb

class User < ActiveRecord::Base
   authenticates_with_sorcery!
   attr_accessible :username, :email, :password, :password_confirmation, :first_name,
                   :user_extra_attributes

   has_one :user_extra, :dependent => :destroy
   accepts_nested_attributes_for :user_extra

end
class UserExtra < ActiveRecord::Base

belongs_to :user

end
  def new
    @user = User.new
    @user.build_user_extra
  end

  def edit
    @user = User.find_by_permalink(params[:id])
    @user.build_user_extra
  end
如果您使用巫术宝石,您可能知道任何新属性都应该添加到属性可访问,因此在我的情况下,它是:用户额外属性,但如果我添加它,则会出现错误:
无法批量分配受保护的属性:date\u birth(1i)、date\u birth(2i)、date\u birth(3i),
性别、地址
,因此,我将它们逐个添加到attr\u accessible中,如下所示:

attr_accessible :gender, :address ...
但无论如何,这是一个错误:

Can't mass-assign protected attributes: date_birth(1i), date_birth(2i), date_birth(3i), gender, address

有什么问题吗?

你应该把attr\u accessible:gender,:address等添加到UserExtra模型中

你把attr\u accessible:gender,:address,添加到了哪个模型中?啊,我想试试,但没有