You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Wagtail站点分页最后一页返回EmptyPage错误问题求助

问题原因

你的模板页码循环部分存在笔误:循环渲染每个页码的跳转链接时,错误使用了blog_pages.next_page_number作为链接参数,而非当前循环的page_num变量。
当访问最后一页时,当前分页对象不存在下一页,调用next_page_number属性会直接触发EmptyPage异常,该错误发生在模板渲染阶段,和你写的后端分页逻辑无关。从你提供的报错栈也能验证这一点:最后触发错误的位置就是next_page_number方法内部的页码校验逻辑。

修复方案

将模板中页码循环部分的链接参数替换为循环变量page_num即可,修正后的模板代码如下:

{% if blog_pages.paginator.num_pages > 1 %}
   {% if blog_pages.has_previous %}
      <li class="page-item">
        <a href="?page={{ blog_pages.previous_page_number }}" class="page-link">
          <span>&laquo;</span>
        </a>
      </li>
   {% endif %}
   {% for page_num in blog_pages.paginator.page_range %}
      <li class="page-item {% if page_num == blog_pages.number %} active{% endif %}">
         <a href="?page={{ page_num }}" class="page-link">
            {{ page_num }}
         </a>
      </li>
   {% endfor %}
   {% if blog_pages.has_next %}
     <li class="page-item">
       <a href="?page={{ blog_pages.next_page_number }}" class="page-link">
         <span>&raquo;</span>
       </a>
     </li>
   {% endif %}
{% endif %}

内容的提问来源于stack exchange,提问作者rehtam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:18:01