def login(self, user, expires_days=31): """ 用户登录, 写入cookie-uid, 用户对象保存到缓存 """ if not user: return self.clear_cookie('uid') self.set_secure_cookie('uid', str(user.id), expires_days=expires_days) cache.get_sync_conn('hqerp').set('uid-' + str(user.id), cPickle.dumps(user))
def login(self, user, expires_days=None, expires=None): """ 用户登录, 写入cookie-token, 用户对象保存到缓存 """ if not user: return if not expires and not expires_days: expires_days = configs['cookie_expires_days'] self.clear_cookie('token') self.set_secure_cookie('token', str(user.id), expires_days=expires_days, expires=expires) cache.get_sync_conn(configs['redis_name']).set('uid-%s' % user.id, cPickle.dumps(user)) self.current_user = user # 设置用户
def get_current_user(self): """ 获取当前用户, 优先从redis获取 """ uid = self.get_secure_cookie('token') if not uid: return None try: user = cache.get_sync_conn(configs['redis_name']).get('uid-%s' % uid) if user: user = cPickle.loads(user) except Exception as ex: logging.error('[Cache Get]: (Error) %s' % str(ex)) user = None return user # or User.get(id=uid)
def logout(self, user=None): if not user: user = self.current_user self.clear_cookie('uid') cache.get_sync_conn('hqerp').delete('uid-' + str(user.id))
def get_current_user(self): uid = self.get_secure_cookie('uid') if not uid: return None user = cache.get_sync_conn('hqerp').get('uid-' + str(uid)) return cPickle.loads(user) if user else None
def logout(self, user=None): user = user or self.user self.clear_cookie('token') if user: cache.get_sync_conn(configs['redis_name']).delete('uid-%s' % user.id)