Django模板语言(二)
default: {{变量名|default:默认值}} 含义: 当变量名没有传值时,使用后面默认的值
length:{{value|length}} “|”管道符左右没有空格 含义:返回value的长度
filesizeformat: {{value|filesizeformat}} 含义:将文件的大小写为人类可读的文件尺寸 例子:value为:123456789时 输出的将会是:117.7MB
slice: {{value |slice:"2:-1"}} 含义:切片 可以切片 列表,字符串 数字不可以
date :{{value | date:"Y-m-d H:i:s"}} 含义:格式化
例子:from datetime import datetime
now = datetime.now()
safe:{{value | safe}} 含义:告诉Django 这个值是安全的 不用转译 例子:value是个a标签 添加safe时 ,可点击跳转 (添加safe时 xss攻击)
truncatechars:{{value | truncatechars:7}} 含义:大段文本,超出后面设置的数字长度 ,就用点点点表示
二 自定义方法
定义阶段
1.在app下面创建 templantetags文件 夹
2.在文件夹中创建myfilter.py文件
myfilter.py文件内容:
from django import template #导入template #这两行是固定写法
register = template.Library() #生成一个注册的实例
@register.filter(name= "addstr") #告诉django的模板语言 现在有一个自定义的filter方法 名字叫addstr
def add_str(arg,arg2): # arg:第一个参数永远是管道符前面的那个变量 arg2:冒号后面的变量
return"{} {}".format(arg,arg2)
使用阶段:
{% load myfilter %} 把干开写的py文件导入 # 找不到时 要重启
{{name | addstr:第二个参数 }}

浙公网安备 33010602011771号