• 1,Django 基础一


      Django 基础
    基础知识:
    1,什么是web应用?
    web本质就是一个socket服务端,用户的浏览器就是一个socket客户端,基于c/s架构的b/s软件开发架构的应用
    浏览器中敲入网址回车发送了几件事?
    1.浏览器超服务端发送请求
    2.服务端接收请求
    3.服务端返回相应的响应
    4.浏览器接收响应 根据特定的规则渲染页面展示给用户看
    2,HTTP协议主要规定了客户端和服务端之间的通信格式
    3,什么是HTTP协议:
    超文本传输协议:规定了客户端与服务端消息传输的格式
    http的四大特性:
    1,基于请求响应
    2,基于TCP/IP之上的作用于应用层的协议
    3,无状态(服务端无法保存用户的输入状态,一个人来一千次都记不住,都如初见)
    4,无连接(请求来一次响应一次,之后立马断开,之后两者再无任何关系,)
    websocket 相当于是HTTP协议的一个大的补丁 它支持长连接
    请求格式:
    请求首行: http版本信息,以及客户请求方式,和url
    请求头:一大堆的k,v 键值对信息(注意下面的空行不能少)

    请求体:post请求携带的数据
    响应数据格式:
    响应首行(标识http协议版本,响应状态码)
    响应头(一大堆k,v 键值对)

    响应体(返回给浏览器页面的数据 通常响应体都是HTML页面
    响应状态码:
    用一串简单的数字来表示一些复杂的状态或者提示信息
    1XX: 服务器已经成功接受到你的数据正在处理,还可以发送额外数据
    2XX: 请求成功 服务器已经将你请求的数据发送给你了
    3XX: 重定向
    4XX: 请求错误或者没有操作权限,或内容不存在
    5XX: 服务器内部错误
    请求的方式:
    1,get请求,向服务端获取数据,
    2,port请求,超服务端提交数据
    URL :统一资源定位符(大白话就是网址)

    一:Web 框架
    python 三大主流web框架
    1.Django:
    优点:大而全 自带的功能特别特别多,类似于航空母舰
    缺点:有点笨重
    2.Flask:
    优点:短小精悍,自带的功能模块特别少 全都是依赖第三方组件
    flask框架第三方的组件特别多 如果把flask全部的组件加起来
    完全可以覆盖过整个Django
    确定:比较受限于第三方的开发者
    3.Tornado:
    优点:天生的异步非租塞框架 速度特别快 能够抗住高并发 可以开发游戏 服务器

    web 框架可以分为三个部分:
    A: socket
    B: 路由与视图函数匹配
    C: 模板语法

    Django:
    A用的别人的 wsgiref(模块文件)
    b自己写的
    c自己写的
    Flask:
    a用的别人的 werkzeug
    b自己写的
    c用别人写的 jinja2
    Tornado:
    a,b,c都是自己写的

    ps:在介绍Django之前的注意事项,即使用Django注意事项
    1.计算机的名称不能有中文
    2.一个pycharm窗口就是一个项目,不要多个项目放在一个窗口里面
    3.项目名不能起中文
      Web流程图:
      



    Django的版本:推荐使用1.11.11(是可以维护的)
    18年之后才有2.0的版本,LTS 表示可维护的版本
    下载:
    命令行直接下载
    pip3 install django 此时默认为最新版本
    pip3 install Django==1.11.11
    查看是否下载成功:
    django-admin
          


    成功后创建项目:
    创建django项目的方式
    方式1(命令行创建):
    1,创建django项目
    django-admin startproject 项目名
    django-admin startproject mysite
    项目就相当于大学下面的学院,在这里只是个空壳,
    所以要在项目下创建自己的应用(app)即自己学院的学科,每个应用不同,其功能就不同
    2,创建应用(app):(要切换到项目文件夹下)
    切换到项目文件夹下用:cd 项目名。 例如:cd mysite
    第一中方法:
    django-admin startapp 应用名
    django-admin startapp app01
    第二中方法:
    python manage.py startapp app01
    3 命令行启动django 项目
    python manage.py runserver
    启动成功命令行会有一行(Starting development server at http://127.0.0.1:8000/)
    ps:启动成功后,在起了一个django窗口后,再不要去起另一个,在端口没改的情况下别起另外的端口
    如果要起窗口,必须把当前启动的窗口停了,关了,再去起窗口,停用ctrl+z键停掉,腾出端口号 退出
    pycharm创建
    方式2(pycharm创建)
    FILE >>> new project 选择第二个django 需要注意名字不能有中文,选择本地的解释器,勾选后台管理



    创建app
    pycharm命令行创建
    python3 manage.py startapp app01
    Tools下面run manage task功能栏
    启动点小绿色箭头
    (**********************************)
    注意:1,用命令行创建的django项目,不会自动创建templates模板文件夹
    需要我们手动创建 并且需要自己去settings.py文件中注册该文件路径
          



    2,创建的应用一定要在settings.py文件中进行注册,才能生效,否则无法识别
    d

    jango主要文件介绍
    项目文件名:
               同名的项目文件夹:
    settings.py 文件 django 暴露给用户的可配置文件
    urls.py 文件 路由与视图函数对应的文件
    wsgi.py 文件 是模块wsgiref的文件
    manage.py文件 django 的入口文件
              应用文件(app):
    migrations文件夹 数据库迁移记录文件
    admin.py 文件 django后台管理
    apps.py文件 应用注册相关
    models.py 文件 orm模型类
    tests.py 测试文件
    views.py 视图函数文件
          


    小白必会三板斧:######################
    1, HttpResponse:返回字符串,你在里面写字符串,返回字符串相关的
    HttpResponse('你好啊,我是你的第一个Django')
    2,返回页面:
    所有的页面html相关的都在templates里面写,在这个文件夹下创建HTML文件
    render: 返回html页面 并且能够给该页面传值
    3,redirect:重定向




    强调:
    1.用django一定要保证只有一个在运行状态 切记切记!!!!!!!
    2.一定记得清浏览器的缓存
  • 相关阅读:
    mapreduce参数记录
    find命令使用中记录
    运算符的优先级(从高到低)
    常用字符与ASCII代码对照表
    mysql在liunx上使用记录
    Java 流收集器 ( Stream Collectors )
    CDH 删除Agent节点(退役节点)
    学习记录CombineFileInputFormat类
    读取HBases的数据的三种常见用法
    hash算法学习
  • 原文地址:https://www.cnblogs.com/Fzhiyuan/p/11515344.html
Copyright © 2020-2023  润新知