0

電子メールとパスワードを使用してサインアップするか、Facebook を使用してサインアップしようとしています。

https://github.com/plataformatec/devise/wiki/OmniAuth%3a-Overviewを使用してみました

各手順に従いましたが、Rails サーバーを実行しようとすると、ターミナルで次のエラーが発生します。

「users/omniauth.callbacks」はサポートされているコントローラー名ではありません

これは私が作成するように指示されたファイル (app/controllers/users/omniauth_callback_controllers.rb) を参照していると思いましたが、ファイルを削除しても何も起こりません。Devise を実装し、Omniauth gem もインストールしました。私は間違って何をしていますか?

私が取った手順:

  1. Gemfileに gem omniauth-facebookを追加しました
  2. ターミナルでバンドルのインストールを実行しました
  3. rails g migration AddColumnsToUsers プロバイダー uid を実行しまし
  4. rake db:migrateを実行しました
  5. ファイル config/initializers/devise.rbに行config.omniauth :facebook, "APP_ID", "APP_SECRET"を追加しました
  6. 行<%= link_to "Sign In With Facebooks", user_omniauth_authorize_path(:facebook %>を使用して、サインアップ ページにサインアップへのリンクを追加しました
  7. devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks}という行を config/routes.rb ファイルに追加しました
  8. (私が混乱した部分) 新しいフォルダー、users、および新しいファイル omniauth_callbacks_controller.rb (ファイル パスは app/controllers/users/omniauth_callbacks_controller.rb) を追加し、コードを含めました (Imgur リンクを参照)。
  9. app/models/user.rb ファイルにコードを追加 (Imgur リンクを参照)

http://imgur.com/a/TyVoK

4

0 に答える 0