응답자의 나머지 프레임 워크 (렌더러)

 

역할 :

  사용자에 대한 사용자 요청 URL 또는 허용의 유형은, 최고의 렌더링 구성 요소를 선택합니다.
  사용자의 URL을 요청
        http://127.0.0.1:8000/test/?format=json
        http://127.0.0.1:8000/test.json

두 내장 렌더러

    JSON 형식을 표시합니다 JSONRenderer를

    액세스 URL :

      http://127.0.0.1:8000/test/?format=json

      http://127.0.0.1:8000/test.json

      http://127.0.0.1:8000/test

   기본 표시 형식 : BrowsableAPIRenderer가 (당신이 html 파일을 수정할 수 있습니다)

    액세스 URL

         http://127.0.0.1:8000/test/?format=api

        http://127.0.0.1:8000/test.api

        http://127.0.0.1:8000/test

   표 형식 : AdminRenderer

    액세스 URL :

        http://127.0.0.1:8000/test/?format=admin

        http://127.0.0.1:8000/test.admin

        http://127.0.0.1:8000/test

   양식 방법을 형성 : HTMLFormRenderer

   액세스 URL

        http://127.0.0.1:8000/test/?format=from

        http://127.0.0.1:8000/test.from

        http://127.0.0.1:8000/test

세 부분으로 사용

에서 rest_framework.renderers는 가져   HTMLFormRenderer, BrowsableAPIRenderer의
 클래스 : BookDetailView (APIView) 


renderer_classes
= [HTMLFormRenderer, BrowsableAPIRenderer]


데프 수 (자기, 요청, PK) : book_obj = models.Book.objects.filter (PK = PK) 좁은 방 () 학사를 = BookSerializers (book_obj, 많은 = 거짓) 반환 응답 (bs.data) 데프 (자동, 요청, PK) 넣어 : book_obj = models.Book.objects.filter (PK = PK) 좁은 방 () 학사 =의 BookSerializers (데이터 = request.data 예 = book_obj) 경우 bs.is_valid () : bs.save () #의 업데이트 반환 응답 (bs.data) 다른 사람 : 반환 응답 (bs.errors) 데프 삭제 (자기, 요청, PK) : models.Book.objects.filter (PK = PK) .delete () 반환 응답 ( "" )

네 개의 글로벌 사용

구성의 설정에서 :

REST_FRAMEWORK = {
     ' DEFAULT_RENDERER_CLASSES ' : ' rest_framework.renderers.JSONRenderer ' ] 
}

다섯 사용자 정의 디스플레이 템플릿 :

에서 rest_framework.renderers가 가져   TemplateHTMLRenderer의
 클래스 BookDetailView (APIView 일) : 
    renderer_classes = [TemplateHTMLRenderer]
     데프 수 (자기, 요청, PK) : 
        book_obj = models.Book.objects.filter (PK = PK) 좁은 방 () 
        학사 =의 BookSerializers (book_obj = 많은 ) False를
         반환 응답 (bs.data, TEMPLATE_NAME = ' aa.html ' )
<! DOCTYPE HTML> 
<HTML LANG = " EN " > 
<head> 
    <메타 캐릭터 = " UTF-8 " > 
    <TITLE> 제목 </ TITLE> 
</ head> 
<body> 
{{제목}} 
{{publishDate} }
 </ BODY> 
</ HTML>

참고 : 만약 자동으로 URL 접미사 렌더러에 따라 선택의 복수의 존재를 모두.

추천

출처www.cnblogs.com/HUIWANG/p/11140090.html