2014-01-06 35 views
1

如果「root_path」將您帶到根頁面,那麼將您重定向到同一頁面的等效路徑是什麼?重定向到Rails中相同頁面的路徑?

下面是上下文:我使用Devise在Rails 4.0應用程序中登錄用戶,如果登錄失敗,我的「custom_failure.rb」文件當前會將用戶重定向到根頁面。

現在,失敗的登錄將使用戶進入根路徑。但登錄表單位於網站上的每個頁面上,如果有人在頁面X上登錄失敗,我希望該用戶留在頁面X上(或者至少將其重定向回來)。

這裏是我的 「custom_failure.rb」 文件現在:

class CustomFailure < Devise::FailureApp 
    def redirect_url 
    root_path 
    end 
. 
. 
end 

我應該鍵入取代 「root_path」?

回答

5

可以使用request.referrer重定向到同一頁面

+0

這不起作用。當我登錄失敗時,瀏覽器會將我帶到路由「/ unauthenticated」,並且我收到以下消息:'沒有路由匹配[GET]「/ unauthenticated」。 – drumwolf

+0

它被拼寫爲「引用者」,而不是「引用者」,但它的確有竅門!謝謝! – drumwolf

+0

oops sorry.typo.please接受答案,如果它解決了問題 – junil

1

你試過redirect_back_or_to signin_path?它可能有幫助。

2

您可以使用redirect_to :back 方法。執行控制器後,它將重新加載相同的頁面。

相關問題