コード例 #1
0
 def wrapped(**kwargs):
     user = session.get('user')
     if not user:
         return jsonify({'r': 403, 'msg': 'Login required.'})
     post_id = kwargs.pop('post_id', None)
     if post_id is not None:
         post = Post.cache(post_id)
         if not post:
             return jsonify({'r': 1, 'msg': 'Post not exist.'})
         args = (user, post)
     else:
         args = (user, )
     return f(*args, **kwargs)
コード例 #2
0
def comments(post_id):
    post = Post.cache(post_id)
    if not post:
        return jsonify({'r': 1, 'msg': 'Post not exist.'})

    page = int(request.args.get('page', 1))
    per_page = int(request.args.get('per_page', 20))

    start = (page - 1) * per_page
    comments = post.comments[start:start + per_page]

    user = session.get('user')
    liked_comment_ids = post.comment_ids_liked_by(user['gid'])
    template = get_template_attribute('utils.html', 'render_comments')

    return jsonify({
        'r': 0,
        'html': template(comments, user),
        'liked_comment_ids': liked_comment_ids
    })