Django Rest Framework Prefetch_Related Order_By api результат не упорядочен

Я пытаюсь упорядочить результаты api запроса по предварительно выбранному полю, но он возвращает результаты в порядке item_id

Модели


class ItemDetails(models.Model):
    item_id = models.BigIntegerField(blank=True, null=False, primary_key=True)
    name = models.TextField(blank=True, null=True)


class ItemRatings(models.Model):
    id = models.BigIntegerField(blank=True, null=False, primary_key=True)
    item_id = models.ForeignKey('app.ItemDetails', on_delete=CASCADE, to_field='item_id ', related_name='ratings', db_column='item_id')
    rating= models.FloatField(blank=True, null=True)

Виды


class ItemList(viewsets.ModelViewSet):

    def get_queryset(self):
        prefetch = Prefetch('ratings', queryset=ItemRatings.objects.order_by('rating'))
        return ItemDetails.objects.prefetch_related(prefetch)

    serializer_class = ItemListSerializer

Сериализаторы


class ItemRatingsSerializer(serializers.ModelSerializer):

    class Meta:
        model = ItemRatings
        exclude = ('id', 'item_id')

class ItemListSerializer(serializers.ModelSerializer):
    
    ratings = ItemRatingsSerializer(required=True, many=True)

    class Meta:
        model = ItemDetails

        fields = '__all__'

Я пробовал добавлять .all() после объектов и в конце оператора return в операторе get_queryset

Любая помощь будет принята с благодарностью

Вернуться на верх