flask渲染页码

在 Flask 框架中,如果你想实现分页功能并渲染页码到你的 HTML 页面,你可以使用 Flask-SQLAlchemy 和 Flask-Paginate 这样的扩展来简化这个过程。下面用一个简单的例子来说明如何在 Flask 应用中实现分页和渲染页码。

首先,确保你已经安装了 Flask-SQLAlchemy 和 Flask-Paginate。如果还没有安装,可以使用 pip 来安装:

pip install flask-sqlalchemy flask-paginate

然后,在你的 Flask 应用中添加以下代码:

from flask import Flask, render_template, request
from flask_sqlalchemy import SQLAlchemy
from flask_paginate import Pagination, get_page_args

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///example.db'
db = SQLAlchemy(app)

class Item(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(80), unique=True, nullable=False)

@app.route('/')
def index():
    page, per_page, offset = get_page_args(page_parameter='page', per_page_parameter='per_page')
    items = Item.query.order_by(Item.id).offset(offset).limit(per_page).all()
    total = Item.query.count()

    pagination = Pagination(page=page, per_page=per_page, total=total,
                            css_framework='bootstrap4')

    return render_template('index.html', items=items, page=page,
                           per_page=per_page, pagination=pagination)

if __name__ == '__main__':
    app.run(debug=True)

在你的 HTML 模板 index.html 中,你可以使用 Bootstrap 或者你喜欢的 CSS 框架来渲染分页链接:

{% extends "base.html" %}

{% block content %}
  <h1>Items</h1>
  {% for item in items %}
    <div>{
  { item.name }}</div>
  {% endfor %}

  {% if pagination %}
    <nav aria-label="Page navigation">
      <ul class="pagination">
        {% for url in pagination.iter_pages() %}
          {% if url %}
            {% if url != pagination.page %}
              <li>

相关推荐

  1. flask渲染页码

    2024-07-20 22:00:02       26 阅读
  2. Flask学习(二):flask模板渲染

    2024-07-20 22:00:02       46 阅读
  3. 老生常谈的页面渲染流程

    2024-07-20 22:00:02       27 阅读
  4. Flask RESTful视图使用(蓝图、装饰器、渲染模板)

    2024-07-20 22:00:02       224 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 22:00:02       141 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 22:00:02       156 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 22:00:02       129 阅读
  4. Python语言-面向对象

    2024-07-20 22:00:02       141 阅读

热门阅读

  1. 23年oppo提前批B组笔试真题-小欧的卡牌

    2024-07-20 22:00:02       27 阅读
  2. Django已经登录但是还是提示登录

    2024-07-20 22:00:02       28 阅读
  3. Go语言入门之函数

    2024-07-20 22:00:02       27 阅读
  4. swift小知识点

    2024-07-20 22:00:02       25 阅读
  5. 项目中MyBatis要引入的内容

    2024-07-20 22:00:02       28 阅读
  6. ccf-csp认证--仓库规划

    2024-07-20 22:00:02       28 阅读
  7. Kraken代码阅读(一)

    2024-07-20 22:00:02       23 阅读