https://github.com/plataformatec/devise/wiki/OmniAuthをフォローしようとしました:-概要、しかしどういうわけか、生成されたルートを見ると、コールバックパスのみが表示され、認証パスは表示されません(実際にuser_omniauth_authorize_pathリンクのあるビューでエラーが発生しました)。
OmniAuthとDeviseのバージョンの問題である可能性があると思います(0.2.0.beta以降、Omniathでは構成可能な設定が可能であり、ルートを定義する必要があるため)。ただし、古いバージョンのOmniAuthを使用しようとすると、エラー「You are using an old OmniAuth version, please ensure 0.2.0.beta or later installed.
」が発生します。
Deviseのマスターである1.2.rcとomniauthブランチ、およびomniauth gem全体(0.2.0.beta以降)と「oa-oauth」の両方を使用してみましたが、成功しませんでした。また、ルートを定義しようとしました。
match '/users/auth/:action/', :to => 'users/omniauth_callbacks#action', :as => 'user_omniauth_authorize'
これはルートに役立ちましたが、リンクを押すと、デバイスがマッピングを見つけることができないというエラーが発生しました。面白いことに、devise_forのコントローラーを無効に変更すると(users /omniauth_callbacksの前に'/'を追加するなど)、最初はエラーが発生しました( "コントローラー名はスラッシュで始めないでください")が、実際には小さなリロードが送信されました私はFacebookに戻って行きます(しかし、当然、コールバックルートは定義されていませんでした)。
私はRubyを初めて使用しますが、ここからどこに行くのかよくわかりません。どんな助けでもありがたいです。