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


      

        对多个字段验证


      

       

        自定义校验函数

        

        

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

  • 相关阅读:
    grafana+mysql忘记admin密码解决方法
    grafana 的配置文件,和使用mysql数据库做持久化
    贴两个mysql优化的配置文件
    Zabbix监控win10系统
    zabbix监控mysql
    http状态码-备查
    安卓移动端line-height垂直居中出现偏移的解决方法
    Video 自动播放
    渐进式Web应用(PWA)
    基于svg的环形进度条
  • 原文地址:https://www.cnblogs.com/sunny666/p/11184741.html
Copyright © 2011-2022 走看看