flask分页

1 最简分页

使用mongoengine0.15.3,flask1.0.2, python3.6

def get_users(*args, **kwargs):

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

    if not sort:
        sort = '-created_at'
    else:
        sort = sort


    try:
        users = User.objects.all().order_by(sort) #默认按照创建时间倒序
        users_total = users.count() #总个数
        users = users.paginate(page=page, per_page=per_page).items #页个数项
        
        new_users = []
        for user in users:
            user_dict = user.to_dict() #mongo obj 序列化
            user_dict.pop("password") #弹出密码
            # print(user_dict)
            new_users.append(user_dict)

        data = {}
        data["users"] = new_users
        data["users_total"] = users_total

        result = formalReturn(200, 'success', data=data)
    except Exception as e:
        result = formalReturn(40004, 'unexpected error', data=str(e))

    return jsonify(result), 200

  

 

posted @ 2018-12-28 10:40  Adamanter  阅读(115)  评论(0编辑  收藏  举报