{% ifnotequal cur_page 1 %}
<li><a href="/product/pdt">|<</a></li>
<li>
<a href="/product/pdt?page_id={{ cur_page|add:-1 }}&{{ url }}"><span><</span></a>
</li>
{% else %}
<li><span style="color: #d1d1d1;">|<</span></li>
<li><span style="color: #d1d1d1;"><</span></li>
{% endifnotequal %}
<li>
<a href="/product/pdt?page_id={{ cur_page }}&{{ url }}">{{ cur_page }}</a>
</li>
{% ifnotequal cur_page total_page %}
<li>
<a href="/product/pdt?page_id={{ cur_page|add:1 }}&{{ url }}">{{ cur_page|add:1 }}</a>
</li>
<li>
<a href="/product/pdt?page_id={{ cur_page|add:2 }}&{{ url }}">{{ cur_page|add:2 }}</a>
</li>
{% endifnotequal %}
{% if next %}
<li>
<a href="/product/pdt?page_id={{ cur_page|add:3 }}&{{ url }}"><span>></span></a>
</li>
{% else %}
<li><span style="color: #d1d1d1;">></span></li>
{% endif %}
{% ifnotequal cur_page total_page %}
<li>
<a href="/product/pdt?page_id={{ total_page }}&{{ url }}"><span>>|</span></a>
</li>
{% else %}
<li><span style="color: #d1d1d1">>|</span></li>
{% endifnotequal %}
点击到最后一页,效果如下:
但实际上只有9页,判断next(即当前页是否存在下一页)标签时 加 3 溢出 到10页。
1、要求显示的页码范围数为3,不足的为2或者1;
请教该如何处理?
在Paginator上再封装一层Spagination ,Views调用
Spagination类代码
template代码