0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Deviseを導入した際のエラーの対処法!

Posted at

##devise導入の手順
1.Gemファイルに記述する

Gemfile
   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モデルを作成できました◎

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?