簡體   English   中英

用設計手動設置return_to

[英]Manually setting return_to with devise

我目前正在使用Devise在我的應用上驗證用戶身份。 它在最重要的時候效果很好,但是我遇到了一個特定的操作問題:

視圖:

<p id="save"><%= link_to "Save", new_save_path, :remote => true %></p>

saves_controller.rb:

def new
  if user_signed_in?
    @save = Save.create(:user_id => current_user.id)
    render :update do |page|
      page.replace_html "save", "Saved!"
    end
  else
    redirect_to new_user_session_path, :notice => "You need to sign in to do that."
  end
end

正如你所看到的,因為動作是一個ajax,我不能使用傳統的before_filter :authenticate_user! 方法。 因此,我將用戶重定向到登錄頁面。

問題是,我想在用戶登錄時自動將用戶重定向回上一頁。

我知道我可以使用session[:"user.return_to"]執行此操作,但我無法設置它。 我怎樣才能做到這一點? 或者我這樣做是錯的?

我相信會話密鑰是:"#{scope}_return_to ,它將簡單地為:user_return_to用於User類。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM