問題は、ユーザーが(電子メールから)パスワードをリセットするためにリンクをクリックしたとき、および(フォームで)リセットしようとしたときに、デバイスがreset_password_sent_atをチェックしていることです。エラーが発生します。
Reset password token has expired, please request a new one
つまり、「reset_password_tokenが生成されると、@ user.reset_password_sent_atをTime.nowに設定する必要があります。そうでない場合、deviseが@ user.reset_password_period_valid?を実行して、リセットトークンがまだ有効かどうかを確認すると、nilになり、トークンの有効期限が切れました。」
私が理解していないのは、reset_password_sent_atをTime.nowに割り当てる方法と場所です。
コンソールからすべてのユーザーにTime.nowを割り当てる必要がありますか?もしそうなら、私はそれをどのように行いますか?
または、Time.nowをreset_password_sent_atに割り当てる必要があるのはbefore_create(または他の何か)ですか?もしそうなら、私はこれをどのようにそしてどこで行うべきですか?