常用语法
Django模板中需要记两种特殊符号
{ { }} 和{ {% %}}
{ { }}表示变量,在模板渲染得时候替换成值,{%%}表示逻辑相关得操作。
模板语法
变量{ { 变量 }}
.
.key > .属性 > .索引
Filters
翻译为过滤器,用来修改变量的显示结果
语法:{ { value| filter_name:参数}}
default:
变量不存在,
filesizeformat:
显示字节大小
add:
数字得加减法,字符串和列表得拼接
lower:
小写
自定义过滤器
- 在app下创建一个名为templatetags的python包(注意:包的名字不能错)
- 创建一个python文件,文件名自定义(mytags.py)
- 在python包中写
from django import template
register = template.Library() #register
4.写函数+装饰器
@register.filter
def add_agr(value,age):
# 功能更具需求而定
return "{}_{}".format(value,age)
- 模板引入引用
{% load mytags %}
{
{ alex.age |add_agr:'岁' }}
for
{% for name in name_list %}
<li>{
{ forloop.counter}}-{
{ name }}</li>
{% enfor %}
forloop.counter 当前循环的序号 从1开始
forloop.counter0 当前循环的序号从0开始
forloop.revcounter 当前循环的序号{}到结束
forloop.revcounter0 当前循环的序号{}从0开始
forloop.first 是否是第一次循环 布尔值
forloop.last 是否是最后一次循环 布尔值
forloop.parentloop 本层循环的外层循环
<ul>
{% for user in user_list %}
<li>{
{ user.name }}</li>
{% empty %}
<li> 空空如也 </li>
{% endfor %}
</ul>