1、Django的tag常见的标签,可以做一些简单的功能
- {%if%} 的使用主要用于做判断,还可以包含{%elif%} 这样的用法,最后要跟上{% endif %}。可以使用你的and,or,not来组织的逻辑。但不允许and和or同时出现在条件语句中。
- {% for i in li %}的使用,用于循环,后面加上{% endfor %}
- {% load %}: 加载标签库,很常用
- {% url %}: 引用路由urls配置的地址
- {% with %}:用更简单的变量名替代复杂的变量名
- {% verbatim %}: 禁止render
- {%csrf_token%}: 用于生成csrf_token的标签,用于防治跨站攻击验证
2、Django的filter过滤器,内置了大概有六十多个 {{ name|lower }}
. 大概是这样使用,而且还可以多个连着使用,也就是chain
- add:给变量加上相应的值
- addslashes: 给变量中的引号前加上斜线
- capfirst: 首字母大写
- cut:从字符串中移除指定的字符
- date:格式化日期字符串:具体格式请参考https://docs.djangoproject.com/en/1.10/ref/templates/builtins/#ref-templates-builtins-filters里面的date标签
- default:如果值是False,就替换成设置的默认值,否则就是用本来的值
- default_if_none:如果值是None,就替换成设置的默认值,否则就使用本来的值
- length:长度,不多说
filesizeformat:将数字转换成文件大小格式
-
floatformat:保留一位小数
- random:随机list里面的某个元素
- 。。。老多了,具体参考官方文档
3、{# greeting #}还可以注释
4、创建自定义tag和filter
-
必须在注册的app的目录下直接创建templatetags模块包
-
创建任意 .py文件,例如:my_tags_filters.py
- 在使用自定义自定义的tag和filter的html文件中导入之前创建的文件
- 使用simple_tag和filter(如何调用)
详细参考:https://docs.djangoproject.com/en/1.10/ref/templates/