Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t获取Django Rest框架中字段的最大值_Django_Django Rest Framework - Fatal编程技术网

Can';t获取Django Rest框架中字段的最大值

Can';t获取Django Rest框架中字段的最大值,django,django-rest-framework,Django,Django Rest Framework,我正在尝试用DRF构建一个web应用程序。我正在尝试传递客户id并显示他已完成的最大交易 这是我的观点 class max_val(APIView): def post(self, request, *args, **kwargs): cid = json.loads(request.body).get('cid') queryset = model_name.objects.filter(customer_id=cid).aggregate(Max('t

我正在尝试用DRF构建一个web应用程序。我正在尝试传递客户id并显示他已完成的最大交易

这是我的观点

class max_val(APIView):
    def post(self, request, *args, **kwargs):
        cid = json.loads(request.body).get('cid')
        queryset = model_name.objects.filter(customer_id=cid).aggregate(Max('transaction'))
        serialize = serializer_name(queryset, many=True)
        return Response(serialize.data, status=status.HTTP_200_OK)
当我运行这个时,我得到-

HTTP 200 OK
Allow: POST, OPTIONS
Content-Type: application/json
Vary: Accept

[
    {
        "customer_id": null,
        "transaction": null
    }
]
这是我的连载器-

class serialser_name(serializers.ModelSerializer):
    class Meta:
        model = model_name
        fields = ('customer_id', 'transaction')

它没有返回最大值。我该怎么做?

聚合不返回对象,它只是返回字段\u name\u max及其值的字典。请尝试以下操作:

class max_val(APIView):
    def post(self, request, *args, **kwargs):
        cid = json.loads(request.body).get('cid')
        max_transaction = model_name.objects.filter(customer_id=cid).aggregate(Max('transaction'))
        return Response(max_transaction, status=status.HTTP_200_OK)

您可以找到有关聚合的更多信息。

您可以共享您的序列化程序吗?我添加了序列化程序事务是什么类型的值?最大值是什么样的?事务是一个数值。应该是1239878.98568