Use a staging table directly and is no longer required.
friends = [pf.to_person for pf in
person.friends.through.objects.filter(from_person=person)
.select_related('to_person')
.order_by('pk')]
Or you need to write raw SQL in the order part.
person.friends.order_by(person.friends.through._meta.db_table+'.id')
source
share