deviseの導入直後のエラー
devise導入して、rails db:migrateしたらすぐにエラーが出ました😭
NoMethodError: undefined method `devise' for User (call 'User.connection' to establish a connection
訳:deviceメソッドが見つからないよ~
ターミナルで調べてみると…
rails g devise:installをしていない!!
対処方法
①routes.rbにあるdevise_for :users
というコードを削除する
②rake db:rollback
でマイグレーションファイルをロールバックする。
③userテーブルを作ったときのマイグレーションファイルを削除する。
④rails d model user
を行いuserモデルを削除する。
これらの作業でdeviseをインストールする前の状態に戻ることができました。
以上の作業が終わったら、rails g devise:install
からコマンドを実行していけば正常に動いた!!
正しい手順
① gem 'davise' 記述する
② bundle install
③ rails s
④ rails g devise:install
⑤ rails g devise user
⑥ マイグレーションファイル記述
⑦ rails db:migrate
⑧ rails db:migrate:status
次は間違えないように気をつけよう😁