Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.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
Python 使用Django Rest框架的带有排序查询参数的订单详细信息\u路由_Python_Django_Django Rest Framework - Fatal编程技术网

Python 使用Django Rest框架的带有排序查询参数的订单详细信息\u路由

Python 使用Django Rest框架的带有排序查询参数的订单详细信息\u路由,python,django,django-rest-framework,Python,Django,Django Rest Framework,在如下所示的detail\u route方法中,如何使用ordering查询参数来支持事件排序: 我尝试了以下方法,但没有解决任何问题: @detail_route() def events(self, request, pk=None): item = self.get_object() events = filters.OrderingFilter().filter_queryset(request, item.events.all(), self) page =

在如下所示的
detail\u route
方法中,如何使用
ordering
查询参数来支持事件排序:

我尝试了以下方法,但没有解决任何问题:

@detail_route()
def events(self, request, pk=None):
    item = self.get_object()
    events = filters.OrderingFilter().filter_queryset(request, item.events.all(), self)
    page = self.paginate_queryset(events)
    if page is not None:
        serializers = EventSerializer(page, many=True, context={'request': request})
        return self.get_paginated_response(serializers.data)
    serializers = EventSerializer(events, many=True, context={'request': request})
    return Response(serializers.data)

正如汤童建议的那样。您需要将EventDateTime添加到ItemViewSet中的ordering_字段。

您可以指定
ordering_字段=('Lable','EventDateTime',)
@detail_route()
def events(self, request, pk=None):
    item = self.get_object()
    events = filters.OrderingFilter().filter_queryset(request, item.events.all(), self)
    page = self.paginate_queryset(events)
    if page is not None:
        serializers = EventSerializer(page, many=True, context={'request': request})
        return self.get_paginated_response(serializers.data)
    serializers = EventSerializer(events, many=True, context={'request': request})
    return Response(serializers.data)