2016-02-17 31 views

回答

1

爲了確保用戶會被重定向到根URL,你必須使用一些 before_actionbefore_filter在Rails 3中)到您的控制器。

例如,如果你正在使用Device gem進行認證,就必須添加到您的控制器:

before_action :authenticate_user!more details...

如果你有自己的認證系統,你必須手動實現類似設備的authenticate_user!方法來設置current_user。

如果我正確理解你的問題,你應該明白了。

+0

過濾器之前添加引發另一個問題,這就是爲什麼我不使用它。 – indb

+0

那麼這意味着你在before_filter方法中有不正確的代碼,或者它接收到不正確的參數,或者你的'Device'配置不正確(如果你使用它),所以這是你需要解決的另一個問題。因爲你錯誤的技術原因是 - 'current_user'沒有設置並且等於'nil',所以你必須把它設置在某個地方。在'before_filter'的幫助下你可以在你的項目的多個地方重複使用它,這是很簡單明顯的,你可以在其中驗證你的用戶並設置爲'current_user'。這裏沒有足夠的信息來說明更精確的信息。 –

+0

這只是因爲我不使用設計路線,它總是移動到設計/ sign_in路徑,但我的sign_in路徑是不同的。 – indb

相關問題