【问题标题】:How to do pagination in python mako如何在 python mako 中进行分页
【发布时间】:2015-04-09 11:56:01
【问题描述】:

我刚刚开始使用 python 来制作网页。目前我正在使用 Mako 和 CherryPy 创建一个本地服务器来测试我写的任何东西。

我为我的数据库添加了一个搜索页面,它可以产生任意数量的结果,从 0 到许多,因此最好的显示方式是通过分页。我在网上快速浏览了一下,我能找到的唯一帮助是这个网页: http://makoframework.com/docs/3.6/learn-more:pagination

问题是我不明白它显示的是什么,到目前为止我只使用 Mako 将变量输入到带有 ${variable} 符号的 html 中。

我希望更有经验的人可以向我展示示例并解释其作用和作用,因为我在网上找不到任何示例。

提前谢谢你!

【问题讨论】:

    标签: html python-2.7 pagination cherrypy mako


    【解决方案1】:

    首先,我希望我们都知道您的示例链接指向同名的 PHP 框架站点,Mako

    为了使分页工作,您需要为每个实体(或为简单起见的表)实现两个方法。在简单的情况下,第一个是 count(),它返回条目数,第二个是 list(page, itemsPerPage),它返回给定页面的条目。

    然后你需要决定你喜欢哪种分页样式。有几种常见的样式。例如。 滑动样式如下:

        [1]  2   3   4  » →
    ← «  1  [2]  3   4  » →
    ← «  2  [3]  4   5  » →
    ← «  3  [4]  5   6  » →
    ← «  4  [5]  6   7  » →
    ← «  4   5  [6]  7  » →
    ← «  4   5   6  [7]
    

    正如您在已链接页面的模板 sn-p 中所见,分页模板需要多个值,例如当前页面、同级页面、第一页、最后一页等。因此,您需要计算这些值,包括条目总数、当前页面、每页条目数和分页样式。实现是非常简单的数学运算。

    当我需要这种简单的页面计算时,我在奶酪店没有找到。只有复杂的事情,顺便尝试做很多事情,我没有问。所以我写了PageCalc,它对几种分页样式进行了如此简单的计算。还有 CherryPy example app 使用 Jina2,不过如果您愿意,也可以轻松将其切换到 Mako。

    【讨论】:

    • 对不起,我太绝望了,我愿意找到与 Mako 有任何关系的事情。我不在我的电脑上,但我会尽快标记你的答案
    猜你喜欢
    • 2020-04-02
    • 2021-02-06
    • 1970-01-01
    • 2011-01-11
    • 2020-07-30
    • 2019-04-23
    • 2019-08-17
    • 2017-10-03
    • 2017-01-20
    相关资源
    最近更新 更多