DRF, как можно получить количество строк из нескольких моделей - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть две модели, как я могу получить количество строк в каждой из них (используя DRF) по одному запросу?

class Question(AbstractArticle):
    title = models.CharField(max_length=256, unique=True)

class Service(models.Model):
    name = models.CharField(max_length=256)

Ответы [ 2 ]

0 голосов
/ 22 февраля 2019

Написать представление и переопределить метод get.

 class TotalCountAPIView(RetrieveAPIView):
        def get(self, request, *args, **kwargs):
            count_qsn = Question.objects.count()
            count_srvc = Service.objects.count()
            return Response(data= {'count_qsn':count_qsn, 'count_srvc': count_srvc})
0 голосов
/ 22 февраля 2019

Вам просто нужно получить счет и передать его просто так:

from rest_framework.views import APIView
from models import Question,Service
from rest_framework import status
class GetCount(APIView):
    #use your proper authentication/permission classes here
    def get(self,request):
        question_count=Question.objects.count()
        service_count= Service.objects.count() 

        return Response({"question":question_count,"service":service_count},status=status.HTTP_200_OK)
...