id summary reporter owner description type status component version severity resolution keywords cc stage has_patch needs_docs needs_tests needs_better_patch easy ui_ux 33945 get_previous_in_order and get_next_in_order return incorrect data when objects is stored in non-default database François Granade Aryan Amish " Using the a simple model with an `order_with_respect_to` (slight variation of the models in https://github.com/django/django/blob/main/tests/multiple_database/models.py): {{{ class Person(models.Model): name = models.CharField(max_length=100, unique=True) class Pet(models.Model): name = models.CharField(max_length=100) owner = models.ForeignKey(Person, models.CASCADE) class Meta: order_with_respect_to = ""owner"" }}} then adding some object, and declaring an order for the pets: {{{ human = Person.objects.using(""other"").create(name=""Human"") dog = Pet.objects.using(""other"").create(name=""Dog"", owner=human) cat = Pet.objects.using(""other"").create(name=""Cat"", owner=human) duck = Pet.objects.using(""other"").create(name=""Duck"", owner=human) human.set_pet_order([duck.pk, dog.pk, cat.pk], ""other"") }}} Then simply trying to get the previous or next pet will fail: {{{ >>> dog.get_next_in_order() # would expect `cat` models.Pet.DoesNotExist: Pet matching query does not exist. >>> dog.get_previous_in_order() # would expect `duck` models.Pet.DoesNotExist: Pet matching query does not exist. }}} " Bug assigned Database layer (models, ORM) 4.0 Normal Wael Ramadan Accepted 0 0 0 0 0 0