def current(cls): try: return flask.g.user except AttributeError: uid = flask.session.get('user') if uid is not None: # For some reason, .get() does not join! user = cls.query.filter(cls.uid == uid).first() flask.g.user = user if user: # Bump expiration time on session utils.session_for_user(user) return user