目前,我使用
对一个对象进行分页articles = g.user.articles().paginate(page, ARTICLES_PER_PAGE, False)
并在视野中
@app.route('/index/<int:page>')
我想在同一页面上分页几个对象。我怎样才能做到这一点?感谢。
答案 0 :(得分:0)
您可以轻松完成,将每个表分开处理。
articles = g.user.articles().paginate(page, ARTICLES_PER_PAGE, False)
other_objects = YourModel.query.paginate(page, ARTICLES_PER_PAGE, False)
它对你有用吗?
答案 1 :(得分:0)
假设您想要单独分页(也就是说,用户可以转到一个列表的第3页和另一个列表的第15页),您必须调整@app.route
以便记住所有其他名单的当前位置,如下:
@app.route('/index/<int:page_of_list1>/<int:page_of_list2>/<int:page_of_list3>')
def index(page_of_list1, page_of_list2, page_of_list3):
然后使用这些排名来确定您的数据查询(index()
内):
list1 = g.user.articles().paginate(page_of_list1, ARTICLES_PER_PAGE, False)
list2 = some_other_query.paginate(page_of_list2, ARTICLES_PER_PAGE, False)
list3 = yet_another_query.paginate(page_of_list3, ARTICLES_PER_PAGE, False)
如果你总是想为每个列表使用相同的位置(所以一个列表的第3页,总是在list2和list3的第3页),你可以使用代码的后半部分,并在所有查询中使用page
。
请根据存储在其中的内容将这些list_...
变量重命名为更有用的内容