2012-05-07 18 views
0

我得到了這樣的錯誤:導軌 - 錯誤初始化常數了myNameSpace :: OmniauthCallbacksController

uninitialized constant Mobile::OmniauthCallbacksController 

這似乎是一個的routes.rb問題。我需要添加到我的名稱空間才能使其工作?

這裏是路線範圍:

scope :module => :mobile, :as => :mobile do 
    constraints(:subdomain => /m/) do 
     devise_for :users, :path => "", :path_names => 
       { :sign_in => "login", :sign_out => "logout", 
       :sign_up => "signup" }, 
       :controllers => {:sessions => "mobile/sessions" , :passwords => "mobile/passwords" , :confirmations => "mobile/confirmations" , :registrations => "mobile/registrations"} 

     get "/home" => "home#index" , :as => "home" 

    end 
    end 

別處在routes.rb中文件中有這樣一個片段:

devise_scope :user do 
    get "auth/:provider" => "users/omniauth_callbacks#passthru" 
    end 

,但我不知道如何使它內部的工作命名空間我工作。任何想法?

謝謝!

回答

1

我認爲這個問題可能是你使用這些值的你的控制器:

{:sessions => "mobile/sessions" , 
    :passwords => "mobile/passwords" , 
    :confirmations => "mobile/confirmations" , 
    :registrations => "mobile/registrations" 
} 

它看起來像代碼進入這些控制器,並試圖從Mobile範圍內加載OmniauthCallbacksController

+0

我明白了,那我該怎麼辦?我仍然需要爲移動命名空間提供這些控制器。那裏提到omniauth的東西是問題嗎?我曾經在移動命名空間中沒有提及omniauth,但它仍然給出了這個錯誤。 – Awesomeness