zoukankan      html  css  js  c++  java
  • 十.总结drf视图

     一.对一个资源的五个操作: 如users资源:

    序列化是把模型/表中数据以json格式的数据返回给前端,反序列化是把前端通过http post提交过来的json格式数据(data)插入到数据库。

    小知识点:只要看到queryset就一定跟数据库有关系(从数据库拿数据)

    1.get请求,获取资源,有两类:
            1.1获取列表
                返回列表 [{},{}]
                请求的url =>/api/users/
            2.2获取单个对象
                返回对象 {}
                请求的url =>/api/users/1/  1是id或pk
        2.post请求,创建/增加一条记录,:
            请求的url =>/api/users/
            传参body体中:=>且必须是json格式
                如提交数据:{"username":"rock","email":"rock@qq.com","password":"123456"}         
        3.put请求,更新一条记录:
            请求的url =>/api/users/1/
            数据也是body体中=>且是json
            如修改数据提交:{"username":"rock","email":"rock@qq.com"}
        4.patch请求,更新一条记录:
            请求的url =>/api/users/1/
            数据也是在body体中且json格式
            如修改数据提交:{"username":"rock","email":"rock@qq.com"}
            put和patch的区别是:如更新的资源有50个字段,如果是put请求修改的数据在body体的json中除了id不用传外其它所有49个字段都必须得传,只要少传一个字段就会出错。而patch请求呢只需传你要更新的那个字段即可。
        
        5.delete请求,删除一条记录:
            请求的url =>/api/users/1/
    二.无论是序列化还是返序列化还是创建记录都交给序列化类(都是对它的调用),但是它们交给序列化的方式不同(传的参数不一样):
    IdcSerializer =>序列化类
    1.1序列化单个对象:
        IdcSerializer(object, many=False)
    1.2.序列化多个对象:
        IdcSerializer(queryset, many=True) 
    1.3返序列化(新增加一条记录):content是http post提交过来的数据
        IdcSerializer(data=content)
    1.4更新一条记录:
        IdcSerializer(object,data=content)

     

    11

    22

  • 相关阅读:
    Python中bisect的使用方法
    讲述python中ubplot的详细用法
    详解python中@的用法
    Python参数解析模块sys、getopt、argparse使用与对比分析
    Python职业机会–是否值得学习Python?
    错误No Python at ‘E:Pythonpython.exe’怎么解决
    「Vue」v-xxx 标签
    「Vue」v-on修饰符
    「Vue」实用组件
    「Vue」程序式路由导航用法
  • 原文地址:https://www.cnblogs.com/dbslinux/p/13172073.html
Copyright © 2011-2022 走看看