2013-07-19 64 views
0

我有設計和cancan設置,並且在註冊後我無法將用戶重定向到某個頁面。RoR:用devise和cancan註冊後重定向用戶

class RegistrationsController < Devise::RegistrationsController 
    def after_sign_up_path_for(resource) 
    "http://google.com" 
    end 
end 

然後在我的路線:

authenticated :user do 
    root :to => "dashboard#show" 
    end 

現在,當我註冊了一個用戶,它僅被引導到儀表板】#顯示。我試圖讓它去google.com,但它不。難道我做錯了什麼?或者在使用CanCan註冊後還有另一種重定向用戶的方式?

謝謝

回答

0

您添加到您的application_controller.rb

def after_sign_up_path_for(resource) 
    "http://google.com" 
end 

來源:redirec_to external_url

或者您可以使用路由信息的一些外部鏈接看起來像

# in `config/routes.rb` : 

match "/google" => redirect("http://google.com"), :as => :google 

# in `registrations_controller.rb` : 

def after_sign_up_path_for(resource) 
    google_path 
end 

如果您正在使用設計的確認(他們註冊之後,用戶未激活),您可以使用after_inactive_sign_up_path_for方法。

# controllers/registrations_controller.rb 

class RegistrationsController < Devise::RegistrationsController 


    def after_inactive_sign_up_path_for(resource) 
    "http://google.com" 
    end 

end