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

如何修复django-el-pagination滚动分页show_more标签的querystring问题?

解决django-el-pagination最后一页querystring模板解析异常问题

我之前也碰到过一模一样的情况,结合你用的django==1.11.5和django-el-pagination==3.1.0版本,这个问题的核心原因很明确:当滚动到最后一页时,视图不会生成下一页对应的querystring参数,但模板里的show_more标签还在尝试渲染这个不存在的变量,直接引发了模板解析异常。

下面是具体的解决方案:

1. 给show_more标签加条件判断(最直接有效的方法)

在你的documents/documents.html模板里,用分页对象的has_next属性判断是否还有下一页,只有存在下一页时才渲染show_more标签:

{% if page_obj.has_next %}
    {% show_more "加载更多..." "正在加载..." %}
{% endif %}

当到达最后一页时,page_obj.has_next会返回False,此时show_more标签不会被渲染,自然就不会触发querystring变量找不到的错误。

2. 再聊聊问题本质

django-el-pagination的show_more标签,依赖视图传递的querystring变量来生成下一页的URL参数。但当处于最后一页时,视图不会生成这个变量(毕竟没有下一页需要跳转),模板在解析过程中找不到该变量,就会抛出你看到的Exception while resolving variable 'querystring'异常。

3. 额外的小检查

确认你URL里的querystring_key=page参数是正确的——它指定了分页使用的参数名是page,这本身没问题,但要确保视图里正确使用了django-el-pagination的分页逻辑(比如用page_template装饰器或者PaginationMixin)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 03:10:00