Как получить общее количество
Подскажите, как получить общее количество любимых кликов. Смотрите мою попытку ниже, но она не работает.
Это моя модель:
class Review(models.Model):
reviewer = models.ForeignKey(User, related_name='review', on_delete=models.CASCADE)
product = models.ForeignKey(Product, related_name='review', on_delete=models.CASCADE, null=True)
date_time = models.DateTimeField(auto_now_add=True)
comment = models.TextField(max_length=250, blank=True, null=True)
rating = models.CharField(choices=RATING_CHOICES, max_length=150)
loved = models.BooleanField(default=False)
Вот мое мнение:
class ListReviewAPIView(generics.ListAPIView):
queryset = Review.objects.filter(loved="True").count()
serializer_class = ReviewSerializers
Сериализаторы
class ReviewSerializers(serializers.ModelSerializer):
class Meta:
model = Review
fields = ['product', 'comment', 'rating', 'loved', 'date_time', 'reviewer']
Можно ли просто переопределить метод get, чтобы упростить то, что вы хотите сделать?
class GetReviewRate(APIView):
def get(self, request, *args, **kwargs):
count = Review.objects.filter(loved=True).count()
return Response({'loved_count': count})
Также булевы значения - это False/True
, а не "False"/"True"
, это не строки. Помните об этом.