2
设计 gem用于身份验证。使用DB会话存储与其他应用程序共享Rails会话
将导轨会话存储在数据库的中。
为了使用Rails 3以外的会话,我创建了一个名为Session
的模型。 sessions
表中增加了user_id
列。
当用户登录时,我应该更新会话表中的user_id
列。因此,在ApplicationController
我添加了一个方法:
protected
def after_sign_in_path_for(resource)
@session = Session.find_by_session_id(request.session_options[:id])
@session.update_attribute(:user_id, current_user.id)
stored_location_for(resource) || root_path if @session.save
end
但刚过重定向,近期session
被摧毁,我结束了在DB另一个会话一个空白user_id
。
登录成功后写入user_id
一次的最佳方法是什么?
顺便说一句,''session'不需要使用实例变量。 – 2012-05-25 18:01:01