django-模板文件传参
#模板文件传参
def index(request):
name='chen'
age=25
likes=['足球','篮球','排球']
#一般用request.GET.get('name')等方式获得数据
return render(request, 'index.html',{'name':name,'age':age,'likes':likes})
#传参必须是组织成字典 或者locals(),代表当前域内所有变量/对象组成的键值对字典
模板文件内部接收参数:
1.单个变量{{ 变量名 }}
{{ name }} {{ age }}
2.模板内部的标签语法使用{% %}
{% if age > 20 %}
xxxxxx
{% endif %}
{% for i in likes %}
xxxx
{% empty %}
当传入可迭代对象是空的时候执行语句
{% endfor %}
注意:有开始,必须有end
内置变量
| 变量 | 描述 |
| forloop.counter | 循环的当前迭代(从1开始索引) |
| forloop.counter0 | 循环的当前迭代(从0开始索引) |
| forloop.revcounter | 循环结束的迭代次数(从1开始索引) |
| forloop.revcounter0 | 循环结束的迭代次数(从0开始索引) |
| forloop.first | 如果这是第一次通过循环,则为真 |
| forloop.last | 如果这是最后一次循环,则为真 |
| forloop.parentloop | 当嵌套循环,parentloop 表示外层循环 |
使用和传参变量一样
{{ forloop.counte }}
{% if forloop.first %}
xxx
{% endif %}
过滤器:与flask相似
常用的过滤器
| lower | 将字符串转换为全部小写。|
| upper | 将字符串转换为大写形式 |
| safe | 默认不对变量内的字符串进行html转义 |
| add:"n" | 将value的值增加 n | #add:"n"中间没有空格
| truncatechars:'n' | 如果字符串字符多于指定的字符数量,那么会被截断。 截断的字符串将以可翻译的省略号序列(“...”)结尾。 |
{{ name|upper }}
flask常用过滤器
capitalize 首首字符变大大写,其他字符变小小写
lower 把值转换成小小写
upper 把值转换成大大写
title 把值中的每个单词的首首字符变大大写
trim 把值两端的空格去掉

浙公网安备 33010602011771号