在Ruby on Rails的:用戶註銷後我們是否需要刪除會話變量?
假設我有session[:my_var] = 'my_val'
所以在這裏我的問題是: 我們需要之前用戶的註銷設置session[:my_var]=nil
?
或它會自動釋放它的內存。
在Ruby on Rails的:用戶註銷後我們是否需要刪除會話變量?
假設我有session[:my_var] = 'my_val'
所以在這裏我的問題是: 我們需要之前用戶的註銷設置session[:my_var]=nil
?
或它會自動釋放它的內存。
Ruby on Rails的不知道你要保留什麼,或者沒有在用戶的跡象退房手續。
舉例來說,您有一個session[:language]
對每個用戶都是有用的,即使是匿名用戶也是如此。在用戶經歷了選擇特定語言的麻煩之後,您不希望刪除它以顯示默認語言。
因此,刪除您需要的會話對象,如session[:user]=nil
並保留其餘部分。如果你有很多他們要刪除,讓自己註銷幫手。
如果您知道可以滑動整個會話,請使用reset_session
,如@adcosta所述。
如果您已經正確設置了您的驗證碼,那麼它應該處理從內存釋放。以下是我在其中一個應用中完成的操作:
#sessions_controller
def destroy
reset_session
redirect_to login_path, notice: 'Logged out'
end