分頁路線示例與 Flask sqlalchemy Paginate

在此示例中,我們使用路徑中的引數來指定頁碼。我們在函式引數 page=1 中設定了預設值 1。我們在資料庫中有一個 User 物件,我們查詢它,按降序排序,首先顯示最新使用者。然後我們在 flask- sqlalchemy 中使用 query 物件的 paginate 方法。然後我們將其傳遞給 render_template 進行渲染。

@app.route('/users')
@app.route('/users/page/<int:page>')
def all_users(page=1):
    try:
        users_list = User.query.order_by(
            User.id.desc()
        ).paginate(page, per_page=USERS_PER_PAGE)
    except OperationalError:
        flash("No users in the database.")
        users_list = None

    return render_template(
        'users.html',
        users_list=users_list,
        form=form
    )