python - 使用 MySql 在 Flask 中分页

标签 python mysql pagination flask

我搜索了很多。我得到的所有文章都包括 SQLAlchemy,但没有一篇涉及 mysql。我正在使用 flask,我在 mysql 中有一个数据库,我需要在页面中显示数据。像1000张图片,每页10张所以100页。 在 mysql 中,我们可以借助 limit 进行分页。路线可以是:

@app.route('/images', defaults={'page':1})
@app.route('/images/page/<int:page>')

我想问的是分页需要的就这些吗?还是我在这里忘记了重要的事情? 和 mysql 语法将是:

db = mysql.connect('localhost', 'root', 'password', 'img')
cursor = db.cursor()
cursor.execute('SELECT Id,Title,Img FROM image ORDER BY RAND() limit 20 offset 0;')
data = list(cursor.fetchall())

获取前20个结果,但是如何根据pageno获取下一个呢? Flask-paginate 库仅适用于 tSQLAlchemy。

最佳答案

试试这个

@app.route('/images', defaults={'page':1})
@app.route('/images/page/<int:page>')
def abc(page):
    perpage=20
    startat=page*perpage
    db = mysql.connect('localhost', 'root', 'password', 'img')
    cursor = db.cursor()
    cursor.execute('SELECT Id,Title,Img FROM image limit %s, %s;', (startat,perpage))
    data = list(cursor.fetchall())

也许这会有所帮助。

关于python - 使用 MySql 在 Flask 中分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24383223/

相关文章:

MySQL : How to code query

php - 多表分页

spring - 如何为 Spring MVC 添加简单的分页

ruby-on-rails - 在 Postgres 中使用子查询进行 Rails 分页查询

Python组合和产品

python - 根据列表中的元组排列人员

python - 保存图形及其框架,matplotlib

python - 从 Python 网页抓取结果中删除特定字符串

mysql - 如何使用地址或电话号码关联 parent /子女关系中的帐户?

mysql - mysql中的分区