• 第三阶段:Django框架 day54 Django--Django框架知识入门


    Django框架知识入门

    1.HTTP协议

    HTTP协议:超文本传输协议。

    1.1 四大特性

    1. 基于TCP/IP之上作用于应用层

    2. 基于请求响应

    3. 无状态 cookie session token...

      就一次,连接完就断开,每一次都是新人

    4. 无连接

      井水不犯河水

      • 长连接 websocket(HTTP协议的大补丁)

    1.2 数据格式

    1. 请求格式
      • 请求首行(请求方式/协议版本)(http/1.1)
      • 请求头(一大堆k:v键值对)
      • 请求体(真正的数据,发post请求的时候才有;如果是get请求,不会有)
    2. 响应格式
      • 响应首行
      • 响应头
      • 响应体

    1.3 响应状态码

    用特定的数字表示一些意思

    • 1XX:服务端已经成功接收到了你的数据 正在处理 你可以继续提交其他数据
    • 2XX:服务端成功响应(200请求成功)
    • 3XX:重定向
    • 4XX:请求错误(404 请求资源不存在 ,403 拒绝访问)
    • 5XX:服务器内部错误(500 )

    注意:常见的是这么几种类型,但也有1001,202等等自定义的错误提示。

    1.4 请求方式

    • get请求:朝别人要数据(get请求没有请求体,但可以携带参数)

      例如:筛选获取数据

    img
    img

    • post请求:向别人提交数据

      例如:用户登录

    • url统一资源定位符

    1.5 动静态网页

    • 静态网页(数据是写死的 万年不变)
    • 动态网页(数据是实时获取的),例如:
      • 后端获取当前时间展示到前端
      • 后端获取数据库中的数据展示到前端

    2. Web框架

    img

    2.1 框架三组成

    第一步:socket部分

    第二步:路由与视图函数对应关系

    基于wsgiref模块

    • 解决
      • 手动书写socket
      • 手动处理http格式数据
    • 优点
      • urls.py ——> 路由与视图函数对象关系
      • views.py ——> 放的是视图函数(处理业务逻辑的)

    第三步:模板语法

    • {{ }} —— 变量相关
    • {% %} —— 逻辑相关

    2.2 三大主流web框架

    Django

    • 大而全,自带的功能特别特别多 类似于航空母舰
    • 有时候过于笨重

    Flask

    • 小而精,自带的功能特别特别少 类似于游骑兵
    • 第三方的模块特别特别多,如果将flask第三方模块全部加起来,完全可以超过django
    • 比较依赖于第三方模块

    Tornado

    • 异步非阻塞
    • 牛逼到可以开发游戏服务器

    2.3 三大框架区别

    A:socket部分
    ​ B:路由与视图函数对应关系
    ​ C:模板语法

    Django:
        A用的别人的  wsgiref
        B自己写的
        C自己写的
    
    Flask
        A用的别人的  werkzeug(基于wsgiref)
        B自己写的
        C用的别人的  jinja2
    
    Tornado
        三者全是自己写的
    

    3. Django安装

    3.1 注意事项

    1.计算机的名称不能有中文
    ​ 2.一个pycharm窗口就是一个项目
    ​ 3.项目名里面尽量不要用中文

    3.2 django版本问题

    1.X 2.X 现在市面上用的比较多的还是1.X
    ​ 推荐你使用1.11.9~1.11.13

    3.3 django安装

    pip3 install django==1.11.11

    3.4 验证django是否安装成功

    命令行直接敲django-admin

    3.5 小结

    1. 一个django项目就类似于是一所大学,而app就类似于大学里面的学院。django其实就是用来一个个应用的,一个app就相当于一块独立的功能。
      • 用户功能
      • 管理功能
    2. django支持任意多个app

    4. Django使用

    4.1 如何使用

    • 命令行使用

      创建django项目
      django-admin startproject 项目名
      启动django项目
      python manage.py runserver
      创建应用app
      python manage.py startapp 应用名

    注意:新创建的app需要你去settings配置文件中注册,pycharm只会帮你注册第一个你在创建项目的时候写的应用

    注意:

    • 使用命令行创建django项目 不会自动帮你创建templates文件夹只能自己创建
    • settings文件中 需要你手动在TEMPLATES写配置os.path.join(BASE_DIR, 'templates')
    • pycharm使用

      在启动django项目的时候 你一定要确保一个端口只有一个django项目

      项目名
      跟项目名同名的文件夹
      settings.py 暴露给用户的配置文件
      urls.py 路由与视图函数对应关系
      应用名
      migrations文件夹 存放数据库迁移记录的
      admin.py django后台管理
      apps.py 注册相关
      models.py 模型类
      tests.py 测试文件
      views.py 存放视图函数
      templates文件夹 存放html文件
      manage.py django入口文件

  • 相关阅读:
    boost-1.53源代码编译
    Hive分析窗体函数之NTILE,ROW_NUMBER,RANK和DENSE_RANK
    外接圆、内切圆半径公式及相应关系知识点总结
    最小生成树之Prim算法
    JavaScript实现简单图片滚动 --9张图告诉你,C罗欲哭无泪
    Scala入门到精通——第二十七节 Scala操纵XML
    第二十一篇:基​于​W​D​M​模​型​的​A​V​S​t​r​e​a​m​驱​动​架​构​研​究
    oracle表空间查询维护命令大全之中的一个(数据表空间)史上最全
    项目流程管理&&架构总结
    AIX常用命令略记
  • 原文地址:https://www.cnblogs.com/foreversun92/p/11715586.html
Copyright © 2020-2023  润新知