Django 之 rest_framework 响应器使用

使用部分:

  • 第一步:导入模块

    from rest_framework.renders import 	BrowsableAPIRenderer,JSONRenderer,TemplateHTMLRenderer,StaticHTMLRenderer,HTMLFormRenderer
    
    # JSONRenderer  # JSON数据样式响应--->常用
    # BrowsableAPIRenderer # 浏览器接口响应--->常用
    # TemplateHTMLRenderer # 静态HTML响应
    # StaticHTMLRenderer # 标准 HTML 响应
    # HTMLFormRenderer # HTML 表单响应
  • 第二步: 配置响应器

    • 局部配置(在视图类中 配置)

      from rest_framework.parsers import JSONParser, FormParser, MultiPartParser, FileUploadParser
      from rest_framework.renderers import JSONRenderer, BrowsableAPIRenderer class BooksView(ModelViewSet):
      # 局部使用 版本控制 URLPathVersioning
      # versioning_class = URLPathVersioning # 局部 解析器配置
      parser_classes = [JSONParser, ] # 局部配置 响应器
      renderer_classes = [JSONRenderer, BrowsableAPIRenderer] # 获取 queryset对象
      queryset = models.Book.objects.all() # 获取 序列化类
      serializer_class = myser.BookSerializer def list(self, request, *args, **kwargs):
      print(1)
      print(request.version)
      print(request.__dict__) return super().list(request, *args, **kwargs)
    • 全局配置(一般都是全局配置即可)

      REST_FRAMEWORK = {
      
          # 配置全局版本控制
      'DEFAULT_VERSIONING_CLASS': 'rest_framework.versioning.URLPathVersioning',
      'DEFAULT_VERSION': 'v1', # 默认版本(从request对象里取不到,显示的默认值)
      'ALLOWED_VERSIONS': ['v1', 'v2'], # 允许的版本
      'VERSION_PARAM': 'version', # URL中获取值的key # 配置全局解释器
      'DEFAULT_PARSER_CLASSES': [
      'rest_framework.parsers.JSONParser',
      'rest_framework.parsers.FormParser',
      'rest_framework.parsers.MultiPartParser',
      ],
      # 配置全局响应器
      'DEFAULT_RENDERER_CLASSES': ['rest_framework.renderers.JSONRenderer'] }

最新文章

  1. 阿里云提示Discuz uc.key泄露导致代码注入漏洞uc.php的解决方法
  2. 简单的网络引导安装CentOS7
  3. Remove Duplicates from Sorted Array II [LeetCode]
  4. PHP 爬虫
  5. geohash基本原理
  6. IOS开发札记
  7. 并查集(图论) LA 3644 X-Plosives
  8. editplus的各式插件
  9. Android学习笔记(六)Fragment的生命周期
  10. c# session总结
  11. Directx11学习笔记【七】 游戏定时器的实现
  12. 偶然发现www.ghostdogtattoo.com/ 出现的inner.html转换现象
  13. git(windows)
  14. Codeforces Round #552 (Div. 3) B题
  15. XAML绑定到资源文件字符串时失败
  16. Python3输入输出
  17. (未完结)“文远知行杯”GDET第十四届竞赛(网络赛共10题,仅整理出6题)
  18. linux查看用户登录,操作历史等
  19. 针对个别utf8编码站点在iis7上浏览器编码不能自动识别的解决方法
  20. [AI]神经网络章1 神经网络基本工作原理

热门文章

  1. springmvc,controller层在接收浏览器url传来的参数带中文乱码问题。
  2. JVM系列之二:编译过程
  3. 用poolmon来查找内存泄露
  4. 【Gamma阶段】第十次Scrum Meeting
  5. 用简单的JS代码制作计算器
  6. java 查找指定包下的类
  7. PatchMatchStereo可能会需要的Rectification
  8. PatchMatch笔记
  9. C#实现ActiveMQ消息队列
  10. Nginx官方文档翻译(转)