Django分页不起作用

时间:2017-08-01 09:55:50

标签: django pagination

我的问题是,

views.py

from django.shortcuts import render
from django.utils import timezone
from Blog.models import Makale,Kategori,Profil
from django.core.paginator import Paginator,EmptyPage,PageNotAnInteger

def index(request):
    posts = Makale.objects.all().order_by('-tarih')
    paginator = Paginator(posts,1)

    page = request.GET.get('page')
    try:
        sayfalar = paginator.page(page)
    except PageNotAnInteger:
        sayfalar = paginator.page(1)
    except EmptyPage:
        sayfalar = paginator.page(paginator.num_pages)
    return render(request,'index.html',{'posts':posts},
{'sayfalar':sayfalar})

的index.html

<div class="pagination">
                        <ul>

                        <li><span class="nav-prev">{% for sayfa in sayfalar %}{% if sayfalar.has_previous %}<a href="?page={{ sayfalar.previous_page_number }}">Önceki</a>{% endif %}{% endfor %}</span></li>
                        <li><span class="current">{{ sayfalar.number }}</span></li>
                      <li><span class="nav-prev">{% for sayfa in sayfalar %}{% if sayfalar.has_next %}<a href="?page={{ sayfalar.next_page_number }}">Sonraki</a>{% endif %}{% endfor %}</span></li>
                    </ul>
</div>

此代码无效,当它处理此代码时,结果为空

我该怎么办?

1 个答案:

答案 0 :(得分:0)

问题是你为渲染函数提供参数的方式,改变

return render(request,'index.html',{'posts':posts},{'sayfalar':sayfalar})

通过

return render(request,'index.html', {'posts':posts, 'sayfalar':sayfalar})

您希望您的网页位于context参数中,因此与包含帖子的dict相同。不是另一个参数。

相关问题