##devise導入の手順
1.Gemファイルに記述する
gem 'devise'
2.ターミナルで bundle install
3.rails g devise:install コマンド
追加したdeviseというgemの設定関連ファイルが自動で作成されます。
4.rails g devise user
5.rails db:migrate
###rails g devise:installコマンドを間違って入力してしまった!
今回のエラーとしては、rails g devise installと誤って入力してしまい
":"をつけ忘れました!
その結果、
installモデルなどが作成されてしまい、
その後rails g devise:install コマンドを正しく入力しても以下のエラー文がでます。
<エラー文>
method_missing': undefined method `devise' for Install (call 'Install.connection' to establish a connection):Class (NoMethodError)
###対処法
bundle installの直前の処理まで戻す必要があります!
以下の順番で進めて行きます。
1.routes.rbに記載してあるdevise_for: installs
というコードの記述を削除
2.rails db:migrate:status
コマンドでデータベースの状況を確認します
upになっている場合 → rails db:rollback
※downになってる場合はそのまま次の作業に移ります
3.rails d model install
を実行
モデルを作成した際に作成された全てのファイルが削除されます。
Running via Spring preloader in process 6570
invoke active_record
remove db/migrate/20200821050217_create_installs.rb
remove app/models/install.rb
invoke test_unit
remove test/models/install_test.rb
remove test/fixtures/installs.yml
※removeと表示されていればokです!
これでbundle installの直前の処理まで戻せました!
###このあとの処理の流れ
1.rails g devise:install
を実行
Running via Spring preloader in process 6597
create config/initializers/devise.rb
create config/locales/devise.en.yml
2.rails g devise user
コマンドを入力
これで正しくdeviseが導入でき、deviseのuserモデルを作成できました◎