12章 パスワードの再設定
カラムの追加
reset_digest reset_sent_at
digestはDBに暗号化して登録するため。
reset_sent_at(送信時間)を登録するのは、数時間の有効期限を作成するため。
migrateでのエラー
ActiveRecord::DuplicateMigrationNameError: Multiple migrations have the name~
と出ていた。
DB内に2つ同じファイルがあることが問題だった。
→一つ消すことで解決。
隠しフィールドとして、メールアドレスをページ内に保存
テスト箇所不明
よく読めばたぶん、分かる。気がする。
migrateエラー2
今回は
reset_sent_at:datetime
が無いよってエラー。
rails generate migration add_reset_to_users reset_digest:string \ > reset_sent_at:datetime
再度上記をgenerateする。
(※\はいるけど>はいらない!)
すると、
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:
というエラーが。
「既にテーブルがあるよ」っていうエラーなので、
$ rake db:migrate:reset
で無事解決。
heroku dbのエラー
$ heroku run rails db:reset
で全消去した。
本番環境でメール送れないエラー
開発環境だと大丈夫。
・heroku関連のエラー
・メール送る関連のエラー かな。
一旦先に進む。