rails6 deviseインストール後に「NameError: uninitialized constant User」が発生した場合の対処法

rails6で、deviseインストール後に「NameError: uninitialized constant User」が発生した場合の対処法を記述してます。railsのバージョンは6.1.0です。
環境
- OS ubuntu20.10
- ruby 2.7.2
- rails 6.1.0
- Postgresql 13.1 (dockerで構築)
エラー全文
「rails db:migrate」実行時に発生
rails aborted!
NameError: uninitialized constant User
/home/mebee/rails-test/test-project/config/routes.rb:2:in `block in <main>'
/home/mebee/rails-test/test-project/config/routes.rb:1:in `<main>'
/home/mebee/rails-test/test-project/config/environment.rb:5:in `<main>'
/home/mebee/rails-test/test-project/bin/rails:5:in `<top (required)>'
/home/mebee/rails-test/test-project/bin/spring:8:in `block in <top (required)>'
/home/mebee/rails-test/test-project/bin/spring:5:in `tap'
/home/mebee/rails-test/test-project/bin/spring:5:in `<top (required)>'
Tasks: TOP => db:migrate => db:load_config => environment
(See full trace by running task with --trace)

原因
「rails generate devise:install」をしてなかったために発生
対処法
「config」配下にある「routes.rb」にある「devise_for :users」を削除もしくはコメントアウトする
Rails.application.routes.draw do
#devise_for :users

rollbackを行います。
rails db:rollback
モデルを削除します。
rails d model user
その後に「rails generate devise:install」を実行します。
rails generate devise:install
rails generate devise:views
rails generate devise User
rails db:migrate
自分の場合は、上記の手順で解決しました。
-
前の記事
javascript hasChildNodesで子ノードがあるかを判定する 2021.01.09
-
次の記事
javascript シフト演算子を使って2の累乗計算を行う 2021.01.09
コメントを書く