效果如下
自定义过滤器
加载filter文件 (文件名为 filters.py ) -- 此文件中可能包含多个过滤器
{ % load filters % }
mod过滤器不需要传递参数,| 前面的值默认为它的参数
效果
若需要传递多个参数(至少有一个参数,最多两个参数),则除第一个参数外,别的参数需要设置。
下面 mod_val (方法)过滤器有两个参数
下面第2个参数 的 值为 3。
注意: 模板注释的内容,在返回给浏览器要显示的内容的时候,浏览器的网页源代码是看不到 模板注释 的内容的。
而 html注释 <!-- 注释内容 --> 是可以在网页源代码中看到的。
实例如下
子html 代码 -- 继承 只有一行
定义视图方法
配置url
结果
不同的内容,放在
{% block 块名%}
{% endblock 块名%} 之间
实例
效果
使用 block.super 获取父模板中的内容
效果
6. html转义
用途: 编辑商品详情信息,数据表中保存的是html内容,默认是会被转义的。
实例
view中的方法
url
前端页面
效果
登录装饰器函数
相关的其他视图需要使用登录装饰器函数
所有的post提交的页面,需要加上一个标签 {% csrf_token%}
使用验证码的方法 pip install Pillow==3.4.1
在视图中反向解析
带参数
django功能-静态文件、中间件、后台
动态加载 静态文件的路径
中间件本质:中间件就是Django预留的函数接口,可以利用这些接口干预请求和应答的过程!
下面步骤之间可以实现跳转(跨步),以达到禁止某类用户行为的目的
中间件实例 -- 禁止某个ip访问页面
也可以用装饰器来实现
下面测试中间件中的各个函数
访问的页面的视图函数如下
访问页面之后的中间件的各个函数的调用顺序 -- 第一次访问 和 刷新之后
可以在中间的函数中进行干预,跳过某步骤,直接执行跳过的步骤后面的步骤(中间件函数)
中间件 process_exception 异常函数 -- 调用顺序相反
指定每页显示10条数据
图片上传及分页
获取用户上传的图片 -- 实例
view视图函数
templates
url
效果
实例
templates代码 -- 注意:需要设置当前页不带超链接
view视图方法代码
url
效果