Проблема с пагинацией Django

Я хочу показать разбивку на страницы для своих объектов, которые имеют определенный внешний ключ, с помощью документации, я использую это:

def baslik_handle(request, title):
    baslik, created = Baslik.objects.get_or_create(title=title)
    entryler2 = Entry.objects.filter(baslik=baslik).order_by('timestamp')
    paginator = Paginator(entryler2, 10)

    page = request.GET.get('page')
    try:
        sayfalar = paginator.page(page)
    except PageNotAnInteger:
        sayfalar = paginator.page(1)
    except EmptyPage:
        sayfalar = paginator.page(paginator.num_pages)


    ctx = {'entryler2':entryler2, 'sayfalar':sayfalar}
    return render(request, "baslik/tek.html", ctx)

для html:

{% for entry in entryler2 %}

        {{ entry }}<br>

{% endfor %}



<div class="pagination">
    <span class="step-links">
        {% if sayfalar.has_previous %}
            <a href="?page={{ sayfalar.previous_page_number }}"><i class="fa fa-arrow-left"></i></a>
        {% endif %}

        <span class="current">
             {{ sayfalar.number }} / {{ sayfalar.paginator.num_pages }}
        </span>


        {% if sayfalar.has_next %}
            <a href="?page={{ sayfalar.next_page_number }}"><i class="fa fa-arrow-right"></i></a>
        {% endif %}
    </span>
</div>

ведь эта нумерация страниц не работает. Он просто вычисляет номера страниц и не разделяет объекты на страницы. Например, у меня есть 26 "Entry" с одинаковым внешним ключом Baslik. Когда я смотрю на его страницы, он просто перечисляет все 26 «Записей» на всех трех страницах. Что не так с моим кодом? Что мне делать, чтобы это исправить? Спасибо.


person malisit    schedule 01.10.2014    source источник


Ответы (1)


Заменил это:

{% for entry in entryler2 %}

к этому:

{% for entry in sayfalar %}

и это исправлено.

person malisit    schedule 04.10.2014