我试图从Rails的控制台中设置用户(管理员)密码:施普雷/ Rails的用户密码重置
bundle exec rails console
> Spree::User.first.email
=> "[email protected]"
> Spree::User.first.encrypted_password
Spree::User Load (1.1ms) SELECT "spree_users".* FROM "spree_users" LIMIT 1
=> "4ec556............................................."
> Spree::User.first.password='spree123'
Spree::User Load (1.0ms) SELECT "spree_users".* FROM "spree_users" LIMIT 1
=> "spree123"
> Spree::User.first.password_confirmation='spree123'
Spree::User Load (1.0ms) SELECT "spree_users".* FROM "spree_users" LIMIT 1
=> "spree123"
> Spree::User.first.save!
Spree::User Load (1.0ms) SELECT "spree_users".* FROM "spree_users" LIMIT 1
(0.3ms) BEGIN
(1.3ms) SELECT COUNT(DISTINCT "spree_users"."id") FROM "spree_users" LEFT OUTER JOIN "spree_roles_users" ON "spree_roles_users"."user_id" = "spree_users"."id" LEFT OUTER JOIN "spree_roles" ON "spree_roles"."id" = "spree_roles_users"."role_id" WHERE "spree_roles"."name" = 'admin'
(0.3ms) COMMIT
=> true
> Spree::User.first.encrypted_password
Spree::User Load (1.0ms) SELECT "spree_users".* FROM "spree_users" LIMIT 1
=> "1bc15d.............................................."
到目前为止好。它看起来像用户的新密码已被更改并提交到数据库。但是,当我尝试稍后使用Web客户端登录并使用新密码时,它会失败,并显示无效的身份/密码消息。 我甚至试图与Spree::User.first.reset_password!('spree123', 'spree123')
更新密码,但门槛水湿登录。
的Rails 3.2.12 施普雷1.3.2
任何想法,我究竟做错了什么?如何正确设置新密码?
谢谢。
感谢您的回答。不幸的是,即使将实例分配给局部变量也没有帮助。我必须使用* rake spree_auth:admin:create *创建一个新的管理员,并使用Web管理界面进行更改。 – 2013-02-20 09:34:36
适合我,谢谢 – 2014-04-22 21:31:40