Есть идеи о том, как создать и сохранить новый объект User с помощью devise из консоли ruby?
Когда я пытался спасти его, я всегда становился ложным. Я предполагаю, что что-то упустил, но не могу найти какую-либо связанную информацию
Есть идеи о том, как создать и сохранить новый объект User с помощью devise из консоли ruby?
Когда я пытался спасти его, я всегда становился ложным. Я предполагаю, что что-то упустил, но не могу найти какую-либо связанную информацию
Ответы:
Вы можете добавить false в метод save, чтобы пропустить проверки, если хотите.
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" })
Если у вас confirmable
включен модуль для устройства, убедитесь, что вы устанавливаете confirmed_at
значение на что-то вроде Time.now
при создании.
Вы должны быть в состоянии сделать это с помощью
u = User.new(:email => "user@name.com", :password => 'password', :password_confirmation => 'password')
u.save
если это возвращает ложь, вы можете позвонить
u.errors
чтобы увидеть, что пошло не так.
Confirmable
, позвонитеu.confirm!
Когда на вашей модели есть опция: подтверждаемый, это означает, что пользователь объекта должен быть подтвержден первым. Вы можете сделать два способа сохранить пользователя.
а. сначала пропустить подтверждение:
newuser = User.new({email: 'superadmin1@testing.com', password: 'password', password_confirmation: 'password'})
newuser.skip_confirmation!
newuser.save
б. или используйте подтверждение! :
newuser = User.new({email: 'superadmin2@testing.com', password: 'password', password_confirmation: 'password'})
newuser.confirm!
newuser.save
Если вы хотите избежать отправки электронных писем с подтверждением , лучший выбор:
u = User.new({
email: 'demo@greenant.com.br',
password: '12feijaocomarroz',
password_confirmation: '12feijaocomarroz'
})
u.confirm
u.save
Так что, если вы используете фальшивую электронную почту или у вас нет подключения к Интернету, это позволит избежать ошибок.
confirm!
теперь простоconfirm
Ни один из приведенных выше ответов не работал для меня.
Вот что я сделал:
User.create(email: "a@a.com", password: "asdasd", password_confirmation: "asdasd")
Помните, что пароль должен быть длиннее 6 символов.