Exemple #1
0
 def check_email_token(cls, email_token):
     '''
     校验email_token
     '''
     key = cls.gen_email_token_key(email_token)
     res = redis_conn.hgetall(key)
     if res:
         email = res['email']
         username = res['username']
         user = User.valid_objects.filter(username=username).first()
         if user:
             return {'email': email, 'username': username, 'name': user.name}
     raise ValidationError({'email_token': ['invalid']})
    def set_active_count(user):
        '''
        update active_count to cache
        '''
        date = datetime.datetime.today().date().isoformat()
        uuid = str(user.uuid)
        key = settings.ACTIVE_USER_REDIS_KEY_PREFIX + date
        res = redis_conn.hgetall(key)

        if res:
            redis_conn.hincrby(key, uuid, 1)
        else:
            redis_conn.hset(key, uuid, 1)
            redis_conn.expire(key,
                              settings.ACTIVE_USER_DATA_LIFEDAY * 60 * 60 * 24)
Exemple #3
0
 def check_email_token(cls, email_token):
     '''
     校验email_token
     '''
     key = cls.gen_email_token_key(email_token)
     res = redis_conn.hgetall(key)
     if res:
         email = res[b'email'].decode()
         invite_key = res[b'key'].decode()
         user = User.valid_objects.filter(private_email=email).first()
         if user:
             return {
                 'email': email,
                 'name': user.name,
                 'username': user.username,
                 'key': invite_key
             }
     raise ValidationError({'email_token': ['invalid']})