我正在使用Authlogic對用戶進行身份驗證。Ruby on Rails:如何在authlogic會話中存儲更多數據
我明白如何創建和使用會話,但想要在由authlogic創建的current_user會話中存儲額外的id變量。
可我只是做這樣的事情:
session[:authlogic_sess_name] = @extra_id.id
但是,我不知道是什麼authlogic會話雖然命名或如何訪問它。
謝謝!
我正在使用Authlogic對用戶進行身份驗證。Ruby on Rails:如何在authlogic會話中存儲更多數據
我明白如何創建和使用會話,但想要在由authlogic創建的current_user會話中存儲額外的id變量。
可我只是做這樣的事情:
session[:authlogic_sess_name] = @extra_id.id
但是,我不知道是什麼authlogic會話雖然命名或如何訪問它。
謝謝!
你爲什麼不把這個值存儲在會話中?
session[:extra] = @extra_id.id
Authlogic current_user只是當前會話中的一個值,由Rails堆棧自身管理。
我同意託比,如果你不需要這個額外的屬性在AuthLogic的UserSession對象,那麼它可能會更簡單的存儲在會話哈希本身的值。
但是在我的具體情況下,也許在你的情況下,我在UserSession記錄上特別需要信息,而不是會話哈希,因爲我想在UserSession模型的回調中訪問它,其中「會話「不可用。
下面是描述如何存儲附加屬性上UserSession舊的博客文章: http://railsblog.kieser.net/2010/03/authlogic-custom-logins-and-persisting.html
編輯:我沒有用這種方法我自己的運氣。爲了完成會話散列所需的信息,我將該邏輯放在控制器中而不是模型中。
AuthLogic實際上有一些執行控制器方法的回調。例如,AuthLogic會調用last_request_update_allowed?如果您的控制器在設置last_request_at之前對此作出響應。
是的,我現在正在那樣做。我想我只是想知道如何操作和添加東西到current_user對象。但沒有必要。 – djburdick 2010-01-28 16:42:12