2012-07-14 12 views
11

Próbuję zaimplementować uwierzytelnianie facebook w moim app po this guideDevise/omniauth - Akcja „facebook” nie można znaleźć

I już po wszelkie kroki, ale pojawia się następujący błąd po uderzeniu logowanie.

Unknown action 

The action 'facebook' could not be found for Devise::OmniauthCallbacksController 

Utworzono plik omniauth_callbacks_controller w kontrolerach/użytkownikach. Ma zdefiniowaną metodę facebook. Masz pomysł, jak mam debugować? złożyć


dodawać mój drogi -

Myapp::Application.routes.draw do 
    get "static_pages/home" 

    get "static_pages/help" 

    get "static_pages/about" 

    devise_for :users do 
    resources :posts 

    end 

    root :to => 'static_pages#home' 

    devise_for :users, controllers: {omniauth_callbacks: "omniauth_callbacks"} 
end 

Odpowiedz

15

Jeśli spojrzeć na prowadnicy określa tę linię do pliku trasach:

devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" } 

gdzie trzeba:

devise_for :users, controllers: {omniauth_callbacks: "omniauth_callbacks"} 

Widzisz różnicę?

0

Wpadłem na podobny problem z samouczkami. Sprawdź wielkość liter F na facebooku w user/omniauth_callbacks_controller.rb Używałem dużego "Facebooka", ale szukałem małego "facebooka"