Разработать сброс пароля с консоли Rails
при запуске приложения как выбрать пользователя по адресу электронной почты, а затем Установить пароль вручную в rails console
для разработки?
кроме того, куда бы я пошел, чтобы просмотреть документацию, чтобы охватить более подробную информацию в отношении манипулирования учетными записями при использовании Devise?
8 ответов:
это более или менее так, как вы описали : -)
# use mongoid class User include Mongoid::Document end # then user = User.where(email: 'joe@example.com').first if user user.password = new_password user.password_confirmation = new_password user.save end
обновление от 6 лет спустя :)
современные разработки позволяет простой синтаксис, нет необходимости устанавливать поле подтверждение
user.password = new_password; user.save # or user.update_attributes(password: new_password)
# $ rails console production u=User.where(:email => 'usermail@gmail.com').first u.password='userpassword' u.password_confirmation='userpassword' u.save!
Если вы запустите следующее в консоли rails, он должен сделать трюк:
User.find_by(email: 'user_email_address').reset_password!('new_password','new_password')
http://www.rubydoc.info/github/plataformatec/devise/Devise/Models/Recoverable
вы можете просто обновить поле пароля, нет необходимости в подтверждении пароля, devise сохранит его в зашифрованном виде
u = User.find_by_email('user@example.com') u.update_attribute(:password, '123123')
почему-то (рельсы 2.3??)
user = User.where(:email => email).first
не работает для меня, но
user = User.find_by_email('user@example.com')
сделал это.
1.Войдите в консоль ralis
$ sudo bundle exec rails console production
2.Затем обновите пароль администратора
irb(main):001:0> user = User.where("username = 'root'") irb(main):002:0> u = user.first irb(main):003:0> u.password="root2014@Robin" => "root2014@Robin" irb(main):004:0> u.password_confirmation="root2014@Robin" => "root2014@Robin" irb(main):005:0> u.save => true irb(main):006:0> exit
3.Обновите страницу входа, используйте новый пароль для входа, наслаждайтесь!
Удачи!