2015-01-27 4 views
3

내 API에 POST 요청과 함께 제공되는 json의 유효성을 확인하기 위해 json-schema을 작성했습니다. 아니,이 json을 비 직렬화 할 필요가있다.jsonschema를 Django REST 직렬화 프로그램으로 변환하는 도구는 무엇입니까?

중첩 된 serializers 구조를 작성하기 시작했을 때 프로세스가 매우 유사하다는 것을 알았습니다. 그래서 제 질문은 : 이미 작성된 json-schema가 deserilization 프로세스에 도움이 될 수 있습니까?

+0

django-rest-framework serializers는 이미'.is_valid()'메소드를 통해 들어오는 데이터의 유효성을 검사합니다. 왜 json-schema가 필요한가요? – Todor

+1

그냥 내 취향이라고 가정 해 봅시다. Json-schema는 데이터 생성자에게 제공 할 수있는 데이터 교환 형식의 모호하지 않은 표준으로 게시되고 사용될 수 있지만 코드에 유효성 검사기를 작성하는 경우 – ganqqwerty

+0

[Json Schema Toolkit] (https : //json-schema-toolkit.readthedocs .org/ko/latest/#)가 도움이 될 수 있습니까? – Leonardo

답변

2

[업데이트] 아래에 링크 된 블로그 게시물은 꽤 오래된 것입니다. 대신 JSONSchema 유효성 검사와 DRF를 함께 사용하여 현대적인 예제를 구현했습니다.이 대답은 here에서 볼 수 있습니다.

귀하의 질문을 발견하기 전에 나는에서 장고 REST 프레임 워크와 함께 JSONSchema를 사용하는 방법을 보여줍니다.

Django Rest Framework는 모델과 완벽하게 통합되어 기본 유효성 검사 기능을 제공하며 ModelSerializers는 더욱 정밀한 사용자 정의 유효성 검사를 허용합니다. 그러나 모델을 엔드 포인트의 자원으로 사용하지 않으면 복잡한 데이터 구조의 사용자 정의 유효성 검증에 필요한 코드가 털이 될 수 있습니다.

중첩 된 데이터 구조가있는 경우 중첩 된 직렬 변환기가있는 중첩 된 직렬 포트가있는 직렬 변환기를 사용할 수 있습니다. 또는 JSON 스키마와 사용자 지정 JSON 구문 분석기를 사용할 수 있습니다.

JSON 스키마 생성 도구를 사용하면 올바른 구조로 알려진 데이터를 사용하여 유효한 JSON 구조의 정규 "패턴"을 생성 할 수 있습니다. 이 게시물은 Django Rest Framework를 사용하여 JSON 스키마 유효성 검사를 수행합니다.

관련 문제