gemでdeviseをインストールしたけど、やっぱりアンインストール、削除したい時に。
1.テーブルの削除
$ rake db:rollback
マイグレーションをロールバックし、データベースから作成済みのテーブルを削除する。
その後マイグレーションファイルとスキーマファイルを確認し、バージョンの整合性が取れているか確認すること。
もしずれがあれば合わせておかないとマイグレーションでエラーが起きるようになる。
2.configファイルの削除
$ rails destroy devise:install
=> Running via Spring preloader in process 56238
remove config/initializers/devise.rb
remove config/locales/devise.en.yml
3.gemアンインストール
$ bundle exec gem uninstall devise
=> Successfully uninstalled devise-4.6.2
4.残ったdevise関係のファイル・記述を手動で削除
devise_for (routes.rb)
gem 'devise' (gemfile)
before_action :authenticate_user! (controllers)
user_signed_in? (controllers, views)
current_user (controllers, views)
user_session (controllers, views)
devise.rb (config/initializers)
devise.en.yml (config/locales)
view/deviseのファイル
等など。他にもあるかもしれません。
これでエラーが出なければおそらく問題ないはず。
もしこの後に rails g ~ ができなくなったら
$ bundle exec spring stop
これで直ると思います。
参考
・たれみみマンデー
Devise取り消す作業
・joppot
ruby on railsのbundleのGemfileでインストールしたgemを削除する