def post(self, post_id): user = self.current_user post_id = int(post_id) post = db.query(Post).get(post_id) if not post: raise tornado.web.HTTPError(404) else: origin_content = self.get_argument("comment-content", "") content = md(origin_content) if origin_content == "": self.redirect(self.next_url) return comment = Comment(post_id=post_id, user_id=user.id, content=content, origin_content=origin_content) db.add(comment) db.commit() the_comment = ( db.query(Comment).order_by(sa.desc(Comment.created_at)).filter(Comment.user_id == user.id).first() ) if self.is_ajax(): self.write( tornado.escape.json_encode( { "username": user.name, "avatar": user.get_avatar(size=24), "time": formatDate(int(time.time())), "content": content, } ) ) if post.user_id != user.id: db.add(Notifier(post_id=post_id, who_id=user.id, whom_id=post.user_id, comment_id=the_comment.id)) db.commit() if content.find("@") != -1: put_notifier(comment=comment, post=post)
def post(self): if not self.has_permission: return page = int(self.get_argument('page', 1)) topic_id = int(self.get_argument('topic_id', 0)) topic = Topic.get(id=topic_id) if not topic_id: result = {'status': 'error', 'message': '无此主题,不能创建评论'} if self.is_ajax: return self.write(result) else: self.flash_message(result) return self.redirect_next_url() user = self.current_user form = ReplyForm(self.request.arguments) if form.validate(): reply = form.save(user=user, topic=topic) if 'class="mention"' in reply.content: put_notifier(reply) result = { 'status': 'success', 'message': '评论创建成功', 'content': reply.content, 'name': reply.author.name, 'nickname': reply.author.nickname, 'author_avatar': reply.author.get_avatar(size=48), 'author_url': reply.author.url, 'author_name': reply.author.name, 'author_nickname': reply.author.nickname, 'reply_url': reply.url, 'created': reply.created, 'id': reply.id, 'floor': reply.floor } if self.is_ajax: return self.write(result) self.flash_message(result) return self.redirect(topic.url) if self.is_ajax: return self.write(form.result) self.flash_message(form.result) return self.render("topic/index.html", form=form, topic=topic, category='index', page=page)
def post(self): if not self.has_permission: return page = int(self.get_argument("page", 1)) topic_id = int(self.get_argument("topic_id", 0)) topic = Topic.get(id=topic_id) if not topic_id: result = {"status": "error", "message": "无此主题,不能创建评论"} if self.is_ajax: return self.write(result) else: self.flash_message(result) return self.redirect_next_url() user = self.current_user form = ReplyForm(self.request.arguments) if form.validate(): reply = form.save(user=user, topic=topic) if 'class="mention"' in reply.content: put_notifier(reply) result = { "status": "success", "message": "评论创建成功", "content": reply.content, "name": reply.author.name, "nickname": reply.author.nickname, "author_avatar": reply.author.get_avatar(size=48), "author_url": reply.author.url, "author_name": reply.author.name, "author_nickname": reply.author.nickname, "reply_url": reply.url, "created": reply.created, "id": reply.id, "floor": reply.floor, } if self.is_ajax: return self.write(result) self.flash_message(result) return self.redirect(topic.url) if self.is_ajax: return self.write(form.result) self.flash_message(form.result) return self.render("topic/index.html", form=form, topic=topic, category="index", page=page)
def post(self, post_id): user = self.current_user post_id = int(post_id) post = db.query(Post).get(post_id) if not post: raise tornado.web.HTTPError(404) else: origin_content = self.get_argument("comment-content", '') content = md(origin_content) if origin_content == '': self.redirect(self.next_url) return comment = Comment(post_id=post_id, user_id=user.id, content=content, origin_content=origin_content) db.add(comment) db.commit() the_comment = db.query(Comment).order_by( sa.desc(Comment.created_at)).filter( Comment.user_id == user.id).first() if self.is_ajax(): self.write( tornado.escape.json_encode({ 'username': user.name, 'avatar': user.get_avatar(size=24), 'time': formatDate(int(time.time())), 'content': content })) if post.user_id != user.id: db.add( Notifier(post_id=post_id, who_id=user.id, whom_id=post.user_id, comment_id=the_comment.id)) db.commit() if content.find('@') != -1: put_notifier(comment=comment, post=post)
def post(self): if not self.has_permission: return page = int(self.get_argument('page', 1)) topic_id = int(self.get_argument('topic_id', 0)) topic = Topic.get(id=topic_id) if not topic_id: result = {'status': 'error', 'message': '无此主题,不能创建评论'} if self.is_ajax: return self.write(result) else: self.flash_message(result) return self.redirect_next_url() user = self.current_user form = ReplyForm(self.request.arguments) if form.validate(): reply = form.save(user=user, topic=topic) if 'class="mention"' in reply.content: put_notifier(reply) result = {'status': 'success', 'message': '评论创建成功', 'content': reply.content, 'name': reply.author.name, 'nickname': reply.author.nickname, 'author_avatar': reply.author.get_avatar(size=48), 'author_url': reply.author.url, 'author_name': reply.author.name, 'author_nickname': reply.author.nickname, 'reply_url': reply.url, 'created': reply.created, 'id': reply.id, 'floor': reply.floor} if self.is_ajax: return self.write(result) self.flash_message(result) return self.redirect(topic.url) if self.is_ajax: return self.write(form.result) self.flash_message(form.result) return self.render("topic/index.html", form=form, topic=topic, category='index', page=page)