关于如何在ruby控制台中使用devise创建和保存新的用户对象,您有什么想法吗?
当我试图保存它时,我总是出错。我想我遗漏了什么,但是我找不到任何相关的信息。
发布于 2010-12-01 02:12:02
如果需要,您可以在save方法中添加false以跳过验证。
User.new({:email => "guy@gmail.com", :roles => ["admin"], :password => "111111", :password_confirmation => "111111" }).save(false)
否则我就会这么做
User.create!({:email => "guy@gmail.com", :roles => ["admin"], :password => "111111", :password_confirmation => "111111" })
如果您为devise启用了confirmable
模块,请确保在创建时将confirmed_at
值设置为类似于Time.now
的值。
发布于 2010-12-01 02:09:12
您应该能够使用以下命令完成此操作
u = User.new(:email => "user@name.com", :password => 'password', :password_confirmation => 'password')
u.save
如果返回false,则可以调用
u.errors
看看哪里出了问题。
发布于 2013-06-09 12:29:27
当你的模型有:可确认选项时,这意味着对象用户应该首先被确认。您可以通过两种方式来保存用户。
答:首先是跳过确认:
newuser = User.new({email: 'superadmin1@testing.com', password: 'password', password_confirmation: 'password'})
newuser.skip_confirmation!
newuser.save
b.或使用确认!:
newuser = User.new({email: 'superadmin2@testing.com', password: 'password', password_confirmation: 'password'})
newuser.confirm!
newuser.save
https://stackoverflow.com/questions/4316940
复制相似问题