IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Django的WEB开发——!重要views和templates的应用思维导图 -> 正文阅读

[Python知识库]Django的WEB开发——!重要views和templates的应用思维导图

Django

Templates

MTV中的Template

充当数据展示的角色

在Django中使用的模板

模板的组成

  • Html静态

  • 模板y语法

    • 变量

      • {{ var }}

      • 变量名遵循命名规范

      • 来源

        • views试图中传递过来
        • 标签中,自身的逻辑
    • 标签

      • {% exp %}

      • 类型

        • 单标签

        • 双标签

          • 必须闭合
      • 结构标签

        • block

          • 用来规划,填充页面

            • 首次出现规划
            • 第二次出现填坑
            • 第三次出现填坑。默认会覆盖
            • 若不想覆盖,block.super
        • extends

          • 继承
          • 面向对象的体现
          • 提高模板的复用率
        • include

          • 将其他模板包含到页面中
        • block+extends

          • 化整为零

            • 首选方案
        • include+

          • 聚龙作用

            • 不推荐,速度不如上面的快
      • 功能标签

        • if

          • 分支
          • 判断
          • if -else
          • if- elif --else
        • for

          • for i in ***
          • empty ,如果是空列表
          • forloop 索引及控制for循环
        • ifequel

        • ifnotequal

        • withratio

      • 过滤器

        • | 竖线

        • 将钱的输入作为后面的输出

        • upper

        • safe

          • 确认安全
          • 进行html渲染
        • add

      • 注释

        • 单行{# #}

        • 多行 {% comment %}

        • 不要用用 的方式注释

          • 会在浏览器源代码中展现

模板加载

  • 加载模板

    • HttpResponse方法加载模板
    • 将模板load成文本
  • 渲染模板

    • render

请求状态码

  • 2**

    • 代表成功
  • 300*

    • 重定向
  • 4**

    • 客户端错误
  • 5**

    • 服务端错误

      • 不应该存在的错误

views

视图函数

  • MTV中的view
  • 相当于Controller的作用
  • 控制器 接受用户输入(request)
  • 协调模板类型,对数据进行处理

路由器

  • urls

    • urlpatterns

    • url

      • 跟路由中,需要用include将整个子路由添加
      • 第一个参数,正则匹配 r ^
      • 第二个c参数, 包含那个路由
      • 第二个参数,namespace,命名空间
    • 子路由中

      • 前两个参数一致

      • 第三个c参数 name

        • 以后根据名字设置路径
        • 可以避免子路由改名的影响
        • 反向解析。动态获取
  • 接受参数

    • 路径参数

      • 位置参数

        • 使用圆括号包含规则(\d+)
        • 一个圆括号代表一个参数
        • 参数个数与视图函数的参数一一对应(除默认的request)
      • 关键子c参数

        • 可以在圆括号指定参数名字(?Preg)
        • 视图函数中存在圆括号中name对应的参数
        • 参数不区分顺序
        • 个数也必须保持对应
    • 请求c参数

  • 反向解析

    • 在模板中使用

    • {% url “namespace:name”%}

    • 如果存在位置参数

      • {% url “namespace:name” value1 value2 … %}
    • 如果存在关键字参数

      • {% url ‘namespace:name’ key1=values1 key2=value2 … %}
  • 规则

    • 按照书写顺序,从上到下
    • 匹配到就停止
    • 没有最优匹配的概念

双R

  • Request

    • Django根据HTTP请求报文自动生成的一个对象

    • 包含了请求各种信息

    • path

    • method

      • GET
      • POST
    • encoding

    • GET

      • QueryDict

      • 类字典结构

        • 一个key可以对应多个值
        • get默认返回最后一个值
        • getlist返回所有值的列表
      • 子主题 3

    • POST

    • FILES

    • COOKIES

    • session

    • is_ajax()

    • META

      • 客户端的所有信息
      • 字典
  • Response
    在这里插入图片描述

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-10-27 12:47:35  更:2021-10-27 12:47:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 22:20:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码