Django
Templates
MTV中的Template
充当数据展示的角色
在Django中使用的模板
模板的组成
-
Html静态 -
模板y语法
-
变量
-
标签
-
{% 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
-
add -
注释
-
单行{# #} -
多行 {% comment %} -
不要用用
的方式注释
模板加载
-
加载模板
- HttpResponse方法加载模板
- 将模板load成文本
-
渲染模板
请求状态码
views
视图函数
- MTV中的view
- 相当于Controller的作用
- 控制器 接受用户输入(request)
- 协调模板类型,对数据进行处理
路由器
-
urls
-
urlpatterns -
url
- 跟路由中,需要用include将整个子路由添加
- 第一个参数,正则匹配 r ^
- 第二个c参数, 包含那个路由
- 第二个参数,namespace,命名空间
-
子路由中
-
前两个参数一致 -
第三个c参数 name
- 以后根据名字设置路径
- 可以避免子路由改名的影响
- 反向解析。动态获取
-
接受参数
-
路径参数
-
位置参数
- 使用圆括号包含规则(\d+)
- 一个圆括号代表一个参数
- 参数个数与视图函数的参数一一对应(除默认的request)
-
关键子c参数
- 可以在圆括号指定参数名字(?Preg)
- 视图函数中存在圆括号中name对应的参数
- 参数不区分顺序
- 个数也必须保持对应
-
请求c参数 -
反向解析
-
规则
- 按照书写顺序,从上到下
- 匹配到就停止
- 没有最优匹配的概念
双R
-
Request
-
Response
|