views.py
def productList(request,tp,sa,p):
kjList = Good.objects.filter(g_type=tp).order_by(orderDict[sa])
paginator = Paginator(kjList, 8)
tName = gTypes[tp]
try:
kjList = paginator.page(p)
except PageNotAnInteger:
kjList = paginator.page(1)
except EmptyPage:
kjList = paginator.page(paginator.num_pages)
return render(request,'shop/product/productlist.html',locals())
Html:
{% if kjList.has_previous %} #是否有上一页
<a href="{% url 'productList' tp sa kjList.previous_page_number %}" class="pre"><</a>
{% endif %}
{% for pg in kjList.paginator.page_range %} #循环页码,判断是否是当前页,add css
{% if kjList.number == pg %}
<a href="JavaScript:void(0)" class="on">{{ pg }}</a>
{% else %}
<a href="{% url 'productList' tp sa pg %}">{{ pg }}</a>
{% endif %}
{% endfor %}
{% if kjList.has_next %} #判断是否有下一页
<a href="{% url 'productList' tp sa kjList.next_page_number %}" class="next">></a>
{% endif %}