2012-05-03 37 views
0

我有一個模型「用戶」,正在使用會話。將未保存的模型傳遞到視圖

用戶在未登錄的情況下,可以修改會話中的User.new對象,而不實際保存用戶。

我想啓用尚未登錄的用戶來查看他們的用戶#顯示頁面。

這樣做的最好方法是什麼?

謝謝!

回答

0

在你的控制器,你可以做這樣的事情:

def show 
    @user = current_user || session[:current_user] 
end 

所以,你得到的CURRENT_USER如果有,如果沒有,您從會話讀取。

雖然在會話中存儲整個模型通常很糟糕。如果更改了底層類,那麼會話中的對象將不會正確解組,否則確保在對User類進行更改後使用reset_session重置會話,否則會出現很多奇怪的錯誤。