2

我試圖在註冊後設計重定向到自定義頁面。它不工作。我有以下的自定義登記控制器:after_sign_up_path_for not working - devise

class RegistrationsController < Devise::RegistrationsController 
    protected 

    puts 'Registrations controller is happening" 

    def after_sign_up_path_for(resource) 
    puts 'after_sign_up_path_for is working' 
    "http://www.google.com" 
    end 

    def after_inactive_sign_up_path_for(resource) 
    puts 'after_inactive_sign_up_path_for is working' 
    "http://www.google.com" 
    end 
end 

這裏是我的自定義路線:

devise_for :users, :controllers => { :registrations => :registrations } 

那麼,什麼是有趣的是,登記控制器工作時,因爲第一個看跌期權聲明中顯示出來服務器日誌。但是,第二個和第三個put語句(在after_sign_up_path_for和after_inactive_sign_up_path_for內)沒有出現。

註冊後如何獲得重定向?

+0

它不是重複的。我看到了這個問題,答案對我來說不起作用。 – Philip7899

+0

你檢查了其他答案嗎? – Ashitaka

+1

是的,我已經查看了所有堆棧溢出頁面和我能找到的其他資源。 – Philip7899

回答

0

我建議你將這些助手移動到ApplicationController(見docs)並將它們放在公共命名空間中。

+0

謝謝,但我不認爲這將是有效的,因爲它不應該通過每個控制器操作之後經過該方法,就像它在應用程序控制器中一樣。這只是回到某些頁面。只有在用戶嘗試註冊時才能看到此方法。至少這是我從這些焦點獲得的:https://github.com/plataformatec/devise/wiki/How-To:-Redirect-to-a-specific-page-on-successful-sign-up-(registration ) – Philip7899

+0

我試過了,但它仍然無法工作。 – Philip7899

+0

我在路線中看到的另一個區別,你嘗試':registrations =>'registrations''?字符串值我的意思是? –