zoukankan      html  css  js  c++  java
  • DRF序列化

    Serializers 序列化组件 

      当我们做前后端分离的项目~~我们前后端交互一般都选择JSON数据格式,JSON是一个轻量级的数据交互格式。

      那么我们给前端数据的时候都要转成json格式,那就需要对我们从数据库拿到的数据进行序列化。

      接下来我们看下django序列化和rest_framework序列化的对比

      Django序列化传值给前端:

        

      Serializers序列化传值给前端:

        首先,我们要用DRF的序列化,就要遵循人家框架的一些标准, 

        Django我们CBV继承类是View,现在DRF我们要用APIView

        Django中返回的时候我们用HTTPResponse,JsonResponse,render ,DRF我们用Response

        第一步 声明序列化类

          

           source='get_category_display'获取category Model字段名称

         

        第二步 序列化对象

          

        many=True , 多对多字段的queryset

        当然,当前端给我们发送post请求时候,传过来的数据我们要保存至数据库和校验,

        反序列化用的一些字段~有些字段要跟序列化区分开

        

      Serializers反序列化

           

            required=False --不校验
            read_only=True --序列化
            write_only=True --反序列化
            这里 w_category 和 publisher_id字段因为序列化的显示字段
            与反序列不同,所以另起一个字段

          

          序列化对象:

             

     验证

      在声明序列化类下对一些字段校验的方法

      

        字段必须包含python


      

        对多个字段验证


      

       

        自定义校验函数

        

        

        校验哪个字段就将校验函数放在哪里

  • 相关阅读:
    react 常用问题总结
    vue 给element-UI库添加按需加载时启动项目时 babel-preset-es2015 报错
    前端使用 jquery.base64.js 进行加密、解密十分方便
    CommonJS规范与AMD/CMD规范总结
    彻底搞懂Websocket原理
    调用图灵API V2 遇到的坑
    前端html页面,手机查看
    关于原生js的节点兼容性
    数据类型检测方法
    一位大佬关于js去重问题的研究
  • 原文地址:https://www.cnblogs.com/sunny666/p/11184741.html
Copyright © 2011-2022 走看看