zoukankan      html  css  js  c++  java
  • 进入django

    web应用,c/s,b/s架构 c/s: 客户端 服务端 b/s: 浏览器 服务器

    HTTP协议: 超文本传输协议 四大特性:

    1.基于TCP/IP作用在应用层之上的协议

    2.基于请求响应

    3.无状态

    4.无连接

    数据格式之请求:

    请求首行

    请求头(一大堆的k,v键值对)

            请求体
    数据格式之响应:
    响应首行
    响应头(一大堆的k,v键值对)

    响应体
    响应状态码:
    10X 服务端已经接收你的数据,正在处理,你可以继续提交数据
    20X 请求成功
    30X 重定向
    40X 请求错误(404:请求资源不存在)
    50X 内部服务器错误

    手撸简易版web框架

    动静态网页 静态页面: 数据是写死的 万年不变 动态页面: 数据时实时获取的,比如后端获取当前时间展示到前端,从数据库获取数据展示到前端等~~~

    路由与视图函数映射关系 urls = [ ['/index',index], ['/login',login], ['/reg',reg], ['/get_time',get_time] ] 模板渲染(雏形): 后端获取数据,传递给前端页面,页面上可以通过某些方法,使用到后端传递过来的数据

    推到思路 1.纯手撸 2.借助wsgiref帮我实现socket这块 3.先拆分成不同文件 模板渲染由自己的字符串替换变成第三方模块(jinja2)

    模板语法(接近python语法)

    {{ data }}

    {{ data.name }}

    {{ data['name'] }}

    {{ data.get('name') }}

    {{ data.age }}

                {% for data in user_list %}
              <tr>
                  <td>{{data.id}}</td>
                  <td>{{data.name}}</td>
                  <td>{{data.age}}</td>
              </tr>
              {% endfor %}

    python三大主流web框架介绍 django(大而全) flask(小而精) tornado(异步非阻塞)

    a:socket b:路由与视图函数 c:模板渲染

    django: a用的别人的wsgiref b:自己写的 c:自己写的

    flask:a用的别人的werkzeug b:自己写的 c:用的别人的jinja2

    tornado:都是自己写的

    django简介 注意 1.django版本 2.计算机名不能是中文 3.一个pycharm窗口就一个工程

    安装 命令行下载 pip3 install django==1.11.11

    命令行创建django项目django-admin startproject mysite

    命令行创建app python manage.py startapp 应用名

    命令行启动django python manage.py runserver

    用命令行创建的时候,默认没有templates文件夹,需要你自己手动创建 并且在settings配置文件中写上路径

    pycharm下载 点加号 选版本 创建new project选第二个django项目(选本机环境,暂时不要选虚拟环境)

    两种创建app的方式: python manage.py startapp 应用名 tools下面的run manage.py 能够简写并自动提示

    运行方式 python manage.py runserver pycharm自动启动

    django主要文件介绍 app01 migrations 数据库迁移记录相关 models.py orm模型类 views.py 视图函数 templates 放html文件 manage.py django的启动入口文件

    项目名下 setttings.py django项目的配置文件 urls.py 路由与视图函数的映射关系

    django必会三板斧

    HttpResponse 返回字符串

    render 渲染页面并返回

    redirect 重定向

    django默认能够自动重启,但是速度可能没有那么快

  • 相关阅读:
    暑期学习录
    08管道命名符
    07输入输出重定向
    06grep与find命令详解
    05tar命令详解
    04文件目录管理命令
    03工作目录切换命令与文本文件编辑命令
    02系统状态检测命令
    01常用系统工作命令
    vue2.0细节剖析
  • 原文地址:https://www.cnblogs.com/tangda/p/10689023.html
Copyright © 2011-2022 走看看