Django DRF-为额外操作路由其他HTTP方法
我试图使用django rest框架实现,但在Django DRF-为额外操作路由其他HTTP方法,django,django-rest-framework,Django,Django Rest Framework,我试图使用django rest框架实现,但在runserver AttributeError: 'function' object has no attribute 'mapping' 无法找出问题所在-Django 2.1.2、Python 3.6.5 class CustomerAPIViewSet(mixins.ListModelMixin, mixins.CreateModelMixin,
runserver
AttributeError: 'function' object has no attribute 'mapping'
无法找出问题所在-Django 2.1.2、Python 3.6.5
class CustomerAPIViewSet(mixins.ListModelMixin,
mixins.CreateModelMixin,
mixins.RetrieveModelMixin,
mixins.UpdateModelMixin,
viewsets.GenericViewSet):
permission_classes = (IsAuthenticated, CustomerAdminPermissions)
serializer_class = CustomerSerializer
queryset = Customer.objects.all()
@action(detail=True)
def order_guide(self, request, **kwargs):
instance = self.get_object()
serializer = CustomerDetailSerializer(instance)
return Response(serializer.data)
@order_guide.mapping.put
def order_create(self, request, **kwargs):
instance = self.get_object()
serializer = CustomerDetailSerializer(instance, data=request.data)
serializer.is_valid(raise_exception=True)
serializer.save()
return Response(serializer.data)
Django Rest Framework 3.9.0版中引入了用于路由其他HTTP方法的
@action.mapping
。使用raise anAttributeError
的早期版本。尝试升级您的DRF版本
pip install djangorestframework --upgrade