python - 当页面已存在于 django 中时出现 EmptyPage 错误
问题描述
我对 django 有疑问。
我已经创建了一个分页功能,一切都很好,但是当我尝试进入分页的最后一页时,我得到了错误"EmptyPage this page does not contain results"
。
但是那个页面真的存在!还有一些项目,但它没有显示查询的最后五个项目。
这是我的功能:
def clasification(request):
categoria = Clasificacion.objects.filter(existencia=True)
paginator = Paginator(categoria, 5)
page = request.GET.get('page')
try:
items = paginator.page(page)
except PageNotAnInteger:
items = paginator.page(1)
except EmptyPage:
items = paginator.page(paginator.num_pages)
contexto = {'meta_description':'',
'meta_keywords':'',
'items':items}
return render(request, 'adminview/clasification.html', contexto)
这里的一切似乎都很好......
看一下 HTML:
{% if items.has_next or items.has_previous %}
<ul class="pagination">
{% if items.has_previous %}
<li class="page-item"><a class="page-link" href="?page={{ items.previous_page_number }}">Anterior</a></li>
{% else %}
<li class="page-item disabled"><a class="page-link">Anterior</a></li>
{% endif %}
{% for page in items.paginator.page_range %}
<li class="page-item {% if items.number == page %}active{% endif %}"><a class="page-link" href="?page={{ page }}">{{ page }}</a></li>
{% endfor %}
{% if items.has_next %}
<li class="page-item"><a class="page-link" href="?page={{ items.next_page_number }}">Siguiente</a></li>
{% else %}
<li class="page-item disabled"><a class="page-link" href="?page={{ items.next_page_number }}">Siguiente</a></li>
{% endif %}
</ul>
{% endif %}
我不知道为什么我会收到这个错误。
希望您能够帮助我。
谢谢!。
解决方案
在您的模板中,您尝试使用items.next_page_number
whenitems.has_next
为 false。
这将解决您的问题:
{% if items.has_next %}
<li class="page-item"><a class="page-link" href="?page={{ items.next_page_number }}">Siguiente</a></li>
{% else %}
<li class="page-item disabled"><a class="page-link">Siguiente</a></li>
{% endif %}
推荐阅读
- excel - 连续计算可用天数
- python - 字典列表上的 Python 多处理
- solr - 有没有办法在 Solr 的不同方面取消引用参数?
- javascript - 使用 react-hot-loader 时如何避免使用 API 调用重新运行 useEffect?
- google-app-engine - 如何将在应用引擎中运行的应用程序上的 TLS 版本升级到 > 1.2
- cassandra - Apache Cassandra 是否提供可用于防止数据破坏(恶意节点)的测量?
- ansible - ANSIBLE:创建库存清单?
- javascript - 有没有办法跟踪帖子被查看的次数,然后在 keystonejs 中显示数字
- html - 量角器中的表格行数总是返回一
- c - memset char * 带整数