python django listview form使用post和get后,不能分页的解决办法

文章讨论了如何在DjangoListView中处理post和get请求后的分页问题,提供了一种在get方法中实现分页的解决方案。

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

python django listview form使用post和get后,不能分页的解决办法

一、背景

python django listview form使用post和get后,不能分页的解决办法。将post和get注释后,可以分页,判断是由于get和post,将分页进行了屏蔽。
上篇记录链接如下:
python django listview form 组合使用记录

二、解决方案一

使用super(),但没有成功

三、解决方案二

在get中增加分页功能,成功。

注意:返回值中,要将两个字典合并{**locals(),**self.extra_context}

    extra_context = {
        'pagination_url':'technology:listview',
        'namne':'a',
        'is_paginated':True
                     }
    def get_queryset(self):
        return models.T.objects.all()
        
    def get(self,request, *args, **kwargs):
        form = self.form_class(initial=self.initial)
        objs_all=models.T.objects.all()
        paginator = Paginator(objs_all,self.paginate_by)
        # 页码,如没有取到,则取1,返回值是数字
        page = request.GET.get('page',1)
        # 获取页码的对象,里面包含了多个属性
        page_obj = paginator.get_page(page)
        # 页面属性中的所有记录,用于更新页面
        object_list = page_obj.object_list
        return render(request,self.template_name,{**locals(),**self.extra_context})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值