zoukankan      html  css  js  c++  java
  • Django知识点梳理

    Django囊括、杂糅了 前端、数据库、Python知识看起来比较复杂!

    其实就是由http请求周期为主体,延伸出来的知识 。

     PythonWeb服务器网关接口(Python Web Server Gateway Interface,缩写为WSGI。

    对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端。

    0、服务端建成Djano项目等待客户端连接(WSGI)

    web框架的本质就是socket套接字

    1、客户端向服务端发送 request

      WSGI接收请求,接收请求(分割HTTP请求头 请求体 )解析之后送给Django处理----------------------------->博客链接http://www.cnblogs.com/sss4/p/7106084.html

      经过Django的中间件执行中间件的 (类)request方法

      经过服务端CSRF验证 ------------------->博客链接http://www.cnblogs.com/sss4/p/7106084.html

      自定义中间件等---------------------------->博客链接 http://www.cnblogs.com/sss4/p/7106033.html

    2、客户端的request请求到达Django的路由系统(服务端)

       做url正则匹配------------------------------->http://www.cnblogs.com/sss4/p/7070949.html

    (1)静态路由

    (2)动态路由

    (3)路由转发

    (4)路由别名

    3、客户端的request请求 经过路由系统转发到视图层

    (1)视图层--------------------------------------------------->http://www.cnblogs.com/sss4/p/7011148.html

    FBV(基于函数的视图)

    CBV(基于类的视图层)

    (2)设置session/cookie(http短连接、无状态 给到来的用户做标记) ---------------------->http://www.cnblogs.com/sss4/p/7071334.html

    (3)模板渲染  ------------------------------->http://www.cnblogs.com/sss4/p/7071183.html                                   

    特殊标记

    流程控制

    母版

    include

    自定义函数(simple-fifter/simple-tag)

    (3)获取数据库数据------------------------>http://www.cnblogs.com/sss4/p/7070942.html

    orm操作

    单表操作

    连表操作

    orm满足不了就使用原生SQL

    分页:数据不能全部显示到前端,需要分页,定量。---------------------------http://www.cnblogs.com/sss4/p/7082713.html

    生成CSRFtoken随机字符串,添加到form表单 ------------------------------------------>http://www.cnblogs.com/sss4/p/7106084.html

    (4)Form组件动态生成HTML标签(渲染到模板发送给客户端)

    (5)最后耦合模板和数据库数据

    4、服务端视图层执行完毕后开始 response字符串  经过 中间件的 response方法  发送到WSGI

     WSGI接收到response的请求体和请求头,把请求内容发送给客户端

    客户端再次发生跨域请求其他域名------------------------------------------->http://www.cnblogs.com/sss4/p/7137032.html

     

  • 相关阅读:
    为什么比特币和以太坊未必真得比EOS更去中心化?
    为什么我说IPFS社区从卖矿机开始,就是错的
    人群捕捞,不知不觉控制你
    Maven解决repository不更换的问题
    Ubuntu安装mysql-proxy
    Ubuntu的NTP同步时钟设置方法
    MySQL索引原理及慢查询优化
    MySQL对比清除不必要的表
    MySQL5.7绿色版安装
    Ubuntu下监控服务
  • 原文地址:https://www.cnblogs.com/sss4/p/7106791.html
Copyright © 2011-2022 走看看