Swagger를 Django Rest Framework API에 통합하려고합니다. 관련 패키지를 설치하고 Github 페이지의 빠른 시작 가이드를 따랐습니다. 그래도 문제가 있습니다. Swagger는보기의 문서 주석 만 표시합니다.Django Rest Swagger with APIView
기본적으로 주어진 URL을 해석하는 하나의 APIView가 있습니다 (예 : "/ first/second /"또는 "/ a/b/c/d/e/f/g" ")는 aa-db-query를 만들고 url의 끝에있는 요청 유형과 자원에 따라 데이터를 반환하는 올바른 serializer를 선택합니다.
Swagger의 작동을 올바르게 이해했다면 serializer를 사용하여 예제 json 입력 및 기타 관련 데이터를 Ui에 표시합니다. 명시 적으로 사용하는 serializer를 명시 할 방법이 있습니까?
마지막으로 여기에 API 뷰의 GET- 코드를 사용하여 시리얼 라이저 사용법을 보여줍니다. 서로 다른 두 개의 시리얼이 당신이 볼 수 있듯이 :
isValid = self.isValidUrl(request.path)
if not isValid:
return Response("Error: The url is empty.")
url = self.trimTheUrl(request.path)
print url
try:
target = models.APINode.objects.get(uniquePath=url)
perm = IsOwner()
perm.has_object_permission(request, self, target)
#check is the APINode collection or item:
if target.objectType == "item":
#return JSON data of the materialItem:
serializer = ProductSerializer(target.materialItem)
return Response(serializer.data)
else:
#find objects in this collection
children = models.APINode.objects.filter(parentPath=target.uniquePath)
serializer = APINodeSerializer(children, many=True)
return Response(serializer.data)
except models.APINode.DoesNotExist:
return Response("404: No such collection or materialItem.")
어떤 경우는 API가 많은 N-깊은 경로와 파일 시스템과 같은 모음 & 자원 구조를 나타내는 가치가있다.