Ich habe die dieser Leitfaden um die Devise-Facebook-Authentifizierung zum Laufen zu bringen, und ich bin jetzt an einem Punkt angelangt, an dem ich es nicht verstehe und Hilfe benötige.
Ich erhalte den Link Mit Facebook anmelden, aber wenn ich darauf klicke, erhalte ich die folgende Fehlermeldung, die mir sagt, dass etwas mit den Routen nicht stimmt
Unbekannte Aktion
Es konnte keine Gerätezuordnung für den Pfad "/users/auth/facebook" gefunden werden. Vielleicht haben Sie vergessen, Ihre Route innerhalb des scope-Blocks zu verpacken? Zum Beispiel: devise_scope :user do match "/some/route" => "some_devise_controller" end
Hier ist meine Routendatei
devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" }
get '/users/auth/:provider' => 'users/omniauth_callbacks#passthru'
root :to => 'home#index'
Bearbeiten:
Ich habe das Problem gelöst, indem ich die Routen in
devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" } do
get '/users/auth/:provider' => 'users/omniauth_callbacks#passthru'
end
root :to => 'home#index'
Jetzt habe ich den nächsten Fehler immer die Facebook-Authentifizierung zu arbeiten, aber wenn Sie zurück von der "Allow app Bildschirm" Ruby wirft ...
undefinierte Methode `closed?' für nil:NilClass
activesupport (3.1.0.rc8) lib/active_support/whiny_nil.rb:48:in
method_missing' /opt/local/lib/ruby/1.8/net/http.rb:1060:in
r faraday (0.6.1) lib/faraday/adapter/net_http.rb:51:incall' faraday (0.6.1) lib/faraday/request/url_encoded.rb:14:in
anrufen' faraday (0.6.1) lib/faraday/request.rb:88:inrun' faraday (0.6.1) lib/faraday/request.rb:28:in
r faraday (0.6.1) lib/faraday/connection.rb:170:inrun_request' oauth2 (0.4.1) lib/oauth2/client.rb:63:in
Bitte...
Dies ist mit Rails 3.1.0rc8 und Ruby 1.9.2