Example #1
0
    def _save_user(self, data):
        user = User.objects.filter(openid=data['openid'])
        # 没有则存储用户数据,有返回用户数据的字典
        if 0 == user.count():
            user_data = {
                'nickname':
                data['nickname'].encode('iso8859-1').decode('utf-8'),
                'openid': data['openid'],
                'headimgurl': data['headimgurl'],
                'sex': data['sex'],
                'city': data['city'].encode('iso8859-1').decode('utf-8'),
                'country': data['country'].encode('iso8859-1').decode('utf-8')
            }

            if 'unionid' in data:
                user_data.update('unionid', data.unionid)

            try:
                new_user = User(**user_data)
                new_user.save()

                user_data.update({'id': new_user.id})
                return json.dumps(user_data)
                # return user_data
            except Exception as e:
                print(e)

            return None
        else:
            # print(len(user))
            return UserSerializer.toString(user[0])
Example #2
0
 def parse(userStr):
     data = json.loads(userStr)
     user_data = {
         'nickname': data['nickname'],
         'openid': data['openid'],
         'headimgurl': data['headimgurl'],
         'sex': data['sex'],
         'city': data['city'],
         'country': data['country'],
         'id': data['id']
     }
     # if 'unionid' in data:
     #     user_data.update('unionid', data.unionid)
     user = User(**user_data)
     return user