コード例 #1
0
def get_image():
    query_set = dict(visible=True, )
    if request.args.get('board') in ("cat", "dog", "other"):
        query_set['board'] = request.args.get('board')

    try:
        page = int(request.args.get('page'))
    except ValueError as e:
        page = 1
    paginate = Image.objects(**query_set).exclude(
        'w_list',
        'm_list',
    ).paginate(page=page, per_page=15)
    ms = paginate.items
    p = 0
    while paginate.has_next and p < 3:
        p += 1
        paginate = paginate.next()

    data = [m.api_data() for m in ms]
    return json.dumps(dict(
        code=0,
        data=data,
        page=page,
        next=p,
    ))
コード例 #2
0
def vote():
    """
    正负反馈api
    :return:
    00000-反馈成功
    10001-图片不存在
    10002-已经反馈过了
    10003-意料之外的参数类型
    """
    data = request.get_json()
    img_id = data.get('img_id')
    client_ip = request.headers.get("real_ip")
    if client_ip is None:
        client_ip = request.remote_addr
    vote_type = data.get('type')
    image = Image.objects(img_id=img_id).first()
    if not image:
        return json.dumps(dict(code=10001, ))
    if vote_type is 1:
        # 我觉得汪
        if client_ip in image.w_list:
            return json.dumps(dict(code=10002, ))
        image.update(push__w_list=client_ip, w=image.w + 1)
    elif vote_type is 0:
        # 我觉得喵
        if client_ip in image.m_list:
            return json.dumps(dict(code=10002, ))
        image.update(push__m_list=client_ip, m=image.m + 1)
    else:
        return json.dumps(dict(code=10003))

    return json.dumps(dict(code=0))
コード例 #3
0
def get_comment():
    img_id = request.args.get("img_id")
    image = Image.objects(img_id=img_id).first()
    if not image:
        return json.dumps(dict(code=10001))
    data = [c.api_data() for c in image.comments]
    return json.dumps(dict(
        code=0,
        data=data,
    ))
コード例 #4
0
def post_comment():
    data = request.get_json()
    author = data.get('author')
    if author in ["", None]:
        author = 'Anonymous'
    img_id = data.get('img_id')
    image = Image.objects(img_id=img_id).first()
    if not image:
        return json.dumps(dict(code=10001, ))
    content = data.get('content')
    comment = Comment(
        author=author,
        content=content,
    )
    image.update(push__comments=comment)
    return json.dumps(dict(
        code=0,
        data=comment.api_data(),
    ))