Python Django类语法错误
我对python和django比较陌生。试图实现一个python类,但出现了这个奇怪的语法错误Python Django类语法错误,python,python-3.x,Python,Python 3.x,我对python和django比较陌生。试图实现一个python类,但出现了这个奇怪的语法错误 from invoice.models import Invoice from invoice.serializers import InvoiceSerializer from django.http import Http404 from rest_framework.views import APIView from rest_framework.response import Response
from invoice.models import Invoice
from invoice.serializers import InvoiceSerializer
from django.http import Http404
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import status
class InvoiceList(APIView):
def get(self, request, format=None):
try:
invoices = Invoice.objects.all()
serializer = InvoiceSerializer(invoices, many=True)
return Response(serializer.data)
except Invoice.DoesNotExist:
raise Http404
serializer = InvoiceSerializer(invoices, many=True)
return Response(serializer.data)
def post(self, request, format=None):
serializer = InvoiceSerializer(data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_201_CREATED)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST
class InvoiceDetail(APIView):
def get_object(self, pk):
try:
return Invoice.objects.get(pk=pk)
except Invoice.DoesNotExist:
raise Http404
def get(self, request, pk, format=None):
invoice=self.get_object(pk)
serializer=InvoiceSerializer(invoice)
return Response(serializer.data)
def put(self, request, pk, format=None):
invoice=self.get_object(pk)
serializer=InvoiceSerializer(invoice, data=request.data)
if serializer.is_valid():
serializer.save()
return Response(serializer.data)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def delete(self, request, pk, format=None):
invoice=self.get_object(pk)
invoice.delete()
return Response(status=status.HTTP_204_NO_CONTENT)
这是我得到的错误。我不明白为什么它会给我这个错误,因为这个错误对我来说似乎是正确的
类InvoiceDetailAPIView:
^
语法错误:类InvoiceList更改中的语法无效
返回Responseserializer.errors,status=status.HTTP\u 400\u错误\u请求
到
return Responseserializer.errors,status=status.HTTP\u 400\u BAD\u请求在InvoiceDetail类之前缺少一个请求。即,return Responseserializer.errors,status=status.HTTP_400_BAD_REQUESTHint:语法错误指向检测到问题的位置,可以是实际问题所在位置之后的几行,有时甚至几行。