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])
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