Rails:让所有用户在Devise中更改他们的密码?
问题描述:
有没有办法要求所有用户在使用Devise身份验证登录到Rails应用程序时更改密码 ?换句话说,我想要一种“过期”密码的方式,以便下次用户登录时,他们必须更改它。Rails:让所有用户在Devise中更改他们的密码?
答
我不认为Devise可以做到这一点,但我想这可以自己做。我会做什么:
当用户登录后,我将无数据库的encrypted_password字段。
为了检查试图登录的用户的encrypted_password是否为零,我会重写设备的会话控制器(负责登录)。
如果那是零,我会重定向他们登录,同时也会出现一个错误,如“您的密码已过期,请创建一个新的。”
不要忘记记得在加密密码之前不要忘记加密密码,否则你会后悔的。 – Pierre 2012-11-07 21:32:57