get_serializer_class()를 사용하려고하는데 오류 메시지가 나타납니다. 여기에 내 생각이다 -GET 및 PUT을위한 django 다른 serializer - SyntaxError : invalid syntax
class CalendarDetail(RetrieveUpdateDestroyAPIView):
def get_serializer_class(self):
if self.request.method == 'GET':
serializer_class = CalendarGETSerializer
elif self.request.method == 'PUT':
serializer_class = CalendarPUTSerializer
return serializer_class
def get(self, request, format=None):
evntname = self.request.GET.get('name')
queryset = Evntmst.objects.filter(evntmst_name=evntname)
serializer = get_serializer_class(queryset)
if queryset:
return Response(serializer.data)
else:
raise Http404
def put(self, request, format=None):
serializer = get_serializer_class(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
그리고 여기 내 urls.py의 - 내가 '
class CalendarDetail(RetrieveUpdateDestroyAPIView):
^
SyntaxError: invalid syntax
[14/Sep/2014 20:08:16] "GET /deploy/calendartest/?name=cal_daily HTTP/1.1" 500 5
9
- 나는 다음과 같은 오류 메시지가 URL을 공격하려고하자마자
url(r'^deploy/calendartest/$', CalendarDetail.as_view(), name='CalendarDetail'),
그것은 올바르게 클래스의 내부 뭔가를 추측하고 문법 오류가 반드시 사실일까요? 내가 얻지 못하는 것은 다른 모든 클래스가 작동하도록 클래스를 설계했기 때문에 하나의 serializer로 200을 500으로 반환하는 간단한 get을 수행하는 별도의 뷰가 있습니다.
이 경우에, 문제는 위의 줄에 :
클래스 CalendarDetail (RetrieveUpdateDestroyAPIView) - 여기 내보기입니다. 클래스 정의 바로 위에 어떤 것이 보이지 않습니까? – Michael0x2a
아니요 클래스 줄'## TEST CLASS VIEW' 앞에 주석 줄이 있습니다. – whoisearth
죄송합니다. 주석/공백 줄/해석기가 무시할 코드의 첫 줄을 의미했습니다. – Michael0x2a