らいふしふったー

20代後半の未経験がプログラミングに挑戦していくサイト。

プログラミング

deviseをインストールした直後のエラー

投稿日:

Pocket

rails gemのdeviseをインストールした際に出たエラーメモ

 

railsでログイン機能を実装しようとgem deviseを入れてbundle install

deviseの初期設定コマンドrails generate devise:install

Userモデルを作成するためrails generate devise user
これでroutesやmigrateファイルが追加されるので、rake db:migrate

 

‘method_missing’: undefined method ‘devise’ for User (call ‘User.connection’ to establish a connection):Class (NoMethodError)

とエラーが出て、rails sやrake routesも同様にできなくなった。

 

 

rails generate devise:installが実行されていないと、このような状態になるようだ。

 

 

 

対応

rails d(destory) model userでUserモデルを削除する。

・同時に作成されたroutes設定(devise_for :users)とマイグレーションファイルを削除する。

rake db:rollbackで実行したマイグレーションを取り消す。

 

上記を行い、やり直してrails generate devise:installする。

 

 

 

$ rake db:migrate
== 20170609101158 DeviseCreateUsers: migrating ================================
— create_table(:users)
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

常にテーブルあるわって言われたのでrake db:migrate:reset

 

$ rake db:migrate
rake aborted!
ArgumentError: Invalid route name, already in use: ‘new_user_session’
You may have defined two routes with the same name using the `:as` option, or you may be overriding a route alre
ady defined by a resource with the same naming. For the latter, you can restrict the routes created with `resour
ces` as explained here:

数が間違っていると言われた。

 

(routes.rb)

Rails.application.routes.draw do

devise_for :users
devise_for :users

二個あった…。

 

 

 

こちらをネットで見つけて参考とした。

gemのdeviseをインストールした直後のエラーhttp://qiita.com/ryouzi/items/9c5324ba567109ab2a22

 

テスト

テスト

-プログラミング
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

タイトルに困ったら近況報告

月の下旬になると家賃振り込んだり、スクールの授業料を決済したりしてお金の重みを感じる…。 もっと毎日を充実させて一つでも成長しなきゃって思うんです。 関連

no image

もくもく会に参加してみた

no image

皇居ランニングとReadyforもくもく会

no image

DIVE INTO CODEに行ってきた

こんにちは、成田空港ターミナルの北ウェイティングエリアで夜を過ごしている信です。 今日は東京渋谷にある「DIVE INTO CODE」というプログラミングスクールの体験セミナー及び説明会に行ってきまし …

no image

【第3回】Progate Sunday Schoolに行ってきた

日曜日にProgateを使ってプログラミングを勉強するイベント 【第3回】Progate Sunday Schoolに応募できたので、Progate(プロゲート)に行ってきました。 関連