user2880391
user2880391

Reputation: 2791

Django paginator changes pages content every iteration

I'm using Django 2.1 I'm trying to iterate over a queryset using paginator. For some reason it looks like every iteration the pages content is different. for example on first iteration the first page contains some item, and in the next iteration, that item is now on the second page.

This is how I'm using it:

items_qs = Item.objects.all().filter(
        created_at__lte=on_date
    )
all_items_paginator = Paginator(items_qs, 1)
for page_number in all_items_paginator.page_range:
    page = all_items_paginator.page(page_number)
    items_ids_list = [item.id for item in page.object_list]

Upvotes: 0

Views: 69

Answers (1)

Daniel Roseman
Daniel Roseman

Reputation: 599490

You should give your query an explicit ordering.

Item.objects.order_by("created_at").filter(...)

Upvotes: 1

Related Questions