class UserList(Resource):
""" 获取用户列表 """
def get(self):
try:
# 这name是用户名,前端可以传入用户名进行精确搜索当然也可以不传下面做了判断
name = request.args.get('name')
# 一定要给其默认值否则在使用paginate为空时会显示为404
pnum = request.args.get('pnum') if request.args.get('pnum') else 1
psize = request.args.get('psize') if request.args.get('psize') else 1
if name:
# page为当前页数,per_page为一页有多少条
user_page = User.query.filter(User.name.like(f'%{name}%')).paginate(page=int(pnum), per_page=int(psize))
else:
user_page = User.query.paginate(page=int(pnum), per_page=int(psize))
data = {
'pum': pnum,
'totalpage': user_page.total,
'user': [u.to_dict() for u in user_page.items]
}
return to_dict_msg(200, data, '获取用户列表成功!')
except Exception as e:
return to_dict_msg(1000)
Flask实现分页效果
于 2023-09-21 13:42:12 首次发布