django 实现分页

这篇博客详细介绍了如何在 Django 中实现分页功能。通过示例代码展示了如何使用 Paginator 对象对商品数据进行分页,并且给出了 HTML 模板中对应的分页展示代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码:

def index(request):
good = models.Goods.objects.get(is_active=True)
print(good.name)
goods = models.Goods.objects.filter(is_active=False).all()
paginator=Paginator(goods,1)
pid = request.GET.get(‘p’)
if pid==None:
pid=1
else:
pid=int(pid)
page = paginator.page(pid)
return render(request,‘test3/index.html’,{‘page’:page,‘good’:good})

html 分页代码:
{% for good in page %}

        <li>商品名:<a href="/test3/detail/{{good.id}}">{{good.name}}</a> </li>
        <li>商品价格:{{good.price}}</li>
        <li>
            商品图片展示:
            <img width='50px' height="50px" src="{% static good.image %}">
        </li>
    </ul>
   
</div>
{% endfor %}
{% if page.has_previous %}
<a href="/test3/?p={{page.previous_page_number}}">&lt;上一页</a>
{% endif %}
{% for i in page.paginator.page_range %}
    {% if i == page.number%}
        {{i}}
    {% else %}
        <a href="/test3/?p={{i}}">{{i}}</a>
    {% endif %}
    {% endfor %}
{% if page.has_next %}
<a href="/test3/?p={{page.next_page_number}}">下一页&gt;</a>
{% endif %}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值