def post(self): '''发布消息''' response = {} args = publish_message_parser.parse_args() message = Message() message.content = args['content'] message.title = args['title'] user = User.objects(id=args['user_id']).only('name').first() message.publisher = user.name message.publisher_id = args['user_id'] message.clazz_id = args['clazz_id'] message.create_time = time.time()*1000 members = Member.objects(Q(clazz_id=args['clazz_id']) & Q(status=1)).only('user') unread_users = [] for member in members: if str(member.user.id) != args['user_id']: unread_users.append(member.user) message.unread_users = unread_users if args['attachments'] != None: items = eval(args['attachments']) mongo_attachments = [] for item in items: attachment = Attachment() attachment.width = item['width'] attachment.height = item['height'] attachment.url = "http://qiniu1.com/" + item['key'] mongo_attachments.append(attachment) message.attachments = mongo_attachments message.save() response['code']=200 response['msg']='发送消息成功' response['data']=message.json(False) threading.Thread(target=send_publish_message_push, args=(unread_users,message.id)).start() return response