有没有使用 Pony ORM 进行分页的最佳实践?
我看到其他人有这些方法has_next
和has_previous
辅助方法,但在 Pony 中我是靠我自己的。
到目前为止,这就是我所拥有的几个 Jinja 助手:
# Jinja helpers for pagination
def next_page(current, max_page):
if current >= max_page:
return False
else:
return current + 1
def prev_page(current, max_page):
if current < 2:
return False
else:
return current - 1
max_page
计算如下:math.ceil(MyTable.select().count()/PAGE_SIZE)
但是有点乏味,您必须不断发送当前页面和最大页面。
{% if maxpage > 1 %}
{% if prev_page(page, maxpage) %}
<a href="{{ url_for('index', pagenum=prev_page(page, maxpage)) }}"><</a>
{% endif %}
{% if next_page(page, maxpage) %}
<a href="{{ url_for('index', pagenum=next_page(page, maxpage)) }}">></a>
{% endif %}
{% endif %}
所以我错过了什么吗?有更好的办法吗?