我现在正在使用此代码:巫宝石与HAS_ONE关联
用户 HAS_ONE User_extra
用户 =>:用户名,:电子邮件,:crypted_password,:盐,:移动
User_extra =>:USER_ID,:date_birth,性别,:地址
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
user_extra.rb
class UserExtra < ActiveRecord::Base
belongs_to :user
end
users_controller.rb
def new
@user = User.new
@user.build_user_extra
end
def edit
@user = User.find_by_permalink(params[:id])
@user.build_user_extra
end
如果你用法术宝石的工作,你可能知道,任何新的属性应该被添加到attr_accessible,所以在我的情况是:user_extra_attributes,但如果我添加它,然后出现错误: Can't mass-assign protected attributes: date_birth(1i), date_birth(2i), date_birth(3i),
gender, address
,这样的话,我加入他们逐一attr_accessible这样的:
attr_accessible :gender, :address ...
但无论如何抛出一个错误:
Can't mass-assign protected attributes: date_birth(1i), date_birth(2i), date_birth(3i), gender, address
什么可能是问题??
你加入哪个模型'attr_accessible:性别,:地址,...'来? – 2012-03-24 05:45:12
以用户模式.. – 2012-03-24 06:24:07