| 
 | 
 
5鱼币 
def cs(request): 
    # for i in range(100): 
    #     models.Userinfo.objects.create(name="11",password="ddq") 
    n = request.GET.get('q') 
    if n: 
        page = models.Userinfo.objects.filter( 
            Q(id__icontains=n) | 
            Q(name__icontains=n) | 
            Q(password__icontains=n) | 
            Q(age__icontains=n) | 
            Q(daa__icontains=n) 
        ) 
    else: 
        page = models.Userinfo.objects.all() 
    print([s.id for s in page]) 
    # return render(request, 'hrr.html', {'deat': page}) 
    page = int(request.GET.get('ym',1)) 
    pagesize= 17 
    start=(page - 1) * pagesize 
    end=page * pagesize 
    queryset = models.Userinfo.objects.all()[start:end] 
    total_cout = models.Userinfo.objects.all().count() 
    totalpagecount , div = divmod(total_cout,pagesize) 
    if div: 
        totalpagecount += 1 
    plus = 5 
    startpage= page - plus 
    endpage=page +plus + 1 
    if totalpagecount <= 2 * plus + 1: 
        startpage = 1 
        endpage = 2 * plus +1 
    else: 
        if page <= plus: 
            startpage = 1 
            endpage = 2* plus +1 
        else: 
            if (page + plus) > totalpagecount: 
                endpage = totalpagecount 
                startpage= totalpagecount - 2 * plus 
            else: 
                startpage = page - plus 
                endpage = page + plus 
    pagestrlist = [] 
    pagestrlist.append('<li class="active"><a href="?ym={}">首页</a></li>'.format(1)) 
    if page > 1 : 
        prev = '<li class="active"><a href="?ym={}">上一页</a></li>'.format(page - 1 ) 
        pagestrlist.append(prev) 
    else: 
        prev = '<li class="active"><a href="?ym={}">上一页</a></li>'.format(1) 
        pagestrlist.append(prev) 
    for i in range(startpage,endpage +1 ): 
        if i == page: 
            ele = '<li class="active"><a href="?ym={}">{}</a></li>'.format(i,i) 
        else: 
            ele = '<li><a href="?ym={}">{}</a></li>'.format(i, i) 
        pagestrlist.append(ele) 
    if page < totalpagecount : 
        prev = '<li class="active"><a href="?ym={}">下一页</a></li>'.format(totalpagecount + 1 ) 
        pagestrlist.append(prev) 
    else: 
        prev = '<li class="active"><a href="?ym={}">下一页</a></li>'.format(totalpagecount) 
        pagestrlist.append(prev) 
    pagestrlist.append('<li class="active"><a href="?ym={}">尾页</a></li>'.format(totalpagecount)) 
    pagestrlost = mark_safe("".join(pagestrlist)) 
    return render(request, 'hrr.html', {'deat': queryset,"ym":pagestrlost,'deat':page}) 
 
 
 
 
我想把分页改成这样  提示错误  
    values = list(values) 
TypeError: 'int' object is not iterable 
[25/Apr/2023 16:01:29] "GET /cs/ HTTP/1.1" 500 172891 
这个是???????
根据您给出的代码和错误信息,问题出在这行代码: 
 
- page = int(request.GET.get('ym',1))
 
 
  复制代码 
 
问题在于,您将整数类型的 `page` 赋值给了 `values` 变量,并尝试将其转换为列表,这会引发一个 TypeError,因为整数对象不是可迭代的。 
 
不过根据您的代码,我没有看到您在哪里尝试将 `values` 转换为列表。您是否在其他地方调用了这段代码? 
 
为了解决此问题,请确保在处理 `page` 变量时不要尝试将其转换为列表。请检查您的代码,找到可能引发错误的位置,并在那里修改代码。如果您无法找到此问题的根源,请提供更详细的代码信息,以便我们能够为您提供更有效的解决方案。 
 
 
 |   
 
 
最佳答案
查看完整内容 
根据您给出的代码和错误信息,问题出在这行代码:
问题在于,您将整数类型的 `page` 赋值给了 `values` 变量,并尝试将其转换为列表,这会引发一个 TypeError,因为整数对象不是可迭代的。
不过根据您的代码,我没有看到您在哪里尝试将 `values` 转换为列表。您是否在其他地方调用了这段代码?
为了解决此问题,请确保在处理 `page` 变量时不要尝试将其转换为列表。请检查您的代码,找到可能引发错误的位置,并在那里 ... 
 
 
 
 
 
 
 |