Вопрос относительно объекта, получающего сериализацию в Django rest

Здесь у меня простое сомнение, в котором я полностью запутался. У меня есть модель ReviewsRatings для отображения отзывов на основе каждого продукта. И я создал сериализатор модели ReviewSerilaizer. В представлениях я передаю этот экземпляр ReviewsRatings в ReviewSerilaizer

class ShowReviews(APIView):
    def get(self, request, *args, **kwargs):
        product_slug = self.kwargs["product_slug"]
        reviews = ReviewRatings.objects.filter(user=request.user, product__slug=product_slug)
        if not reviews:
            return Response([])
        serializer = ReviewSerializer(reviews, many=True, context={'request':request})
        return Response(serializer.data, status=status.HTTP_200_OK)

#Serializer

class ReviewSerializer(ModelSerializer):
    user = SerializerMethodField()
 
    class Meta:
        model = ReviewRatings
        fields = [
            "user",
            "rating",
            "review",
            "created_at",
            "updated_at",
      
        ]

    def get_user(self, obj):
        return f"{obj.user.first_name} {obj.user.last_name}"

Итак, я сомневаюсь в том, что в def get_user(self, obj) obj это product object, который я получаю. И в представлениях я фильтрую user = request.user вместе с product__slug=product_slug. Так почему же я не получаю user object, а получаю Products object

Вот модели.

class ReviewRatings(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.DO_NOTHING)
    product = models.ForeignKey(Products, on_delete=models.CASCADE)
    rating = models.FloatField(validators=[MinValueValidator(0), MaxValueValidator(5)])
    created_at = models.DateField(auto_now_add=True)
    review = models.CharField(max_length=500, null=True)
    updated_at = models.DateField(auto_now=True)

    class Meta:
        verbose_name_plural = "Reviews & Ratings"

    def __str__(self):
        return self.product.product_name

Я не знаю, это тупой вопрос или я задал его неправильно. Но из-за этого я в замешательстве.

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