Rails尝试在创建用户后创建配置文件
我正在试图弄清楚如何为刚刚创建的用户创建新的配置文件,
我在User模型上使用设计,User模型与UserProfile模型有一对一的关系。
这是我的用户模型的样子:
class User 'username') end # Include default devise modules. Others available are: # :confirmable, :lockable, :timeoutable and :omniauthable devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable end
这会产生以下错误:
nil的未定义方法`new’:NilClass
我在rails c中尝试过User.find(1).user_profile ,这样可行,所以我很确定关系设置正确,
我可能是一个胖胖的大菜,并且试图错误地取自我。
你还可以告诉我如何访问模型中的参数…是否可能?
has_one关系将自动添加:create_
和build_
方法。 检查导轨指南。
你可以试试这个:
after_create do create_user_profile(:name => 'username') end
或者更有可能
after_create do create_user_profile(:name => self.username) end