from django.shortcuts import render
def greet(word):
return "Hello: %s" % word
def index(request):
context = {
"greet":greet
}
return render(request,'index.html',context=context)
def add(request):
context = {
'key1':['1','2','3'],
'key2':['4','5','6']
}
return render(request,'add.html',context=context)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{# 两个数字,手下转换为int型,之后进行数学上的相加,#}
{#如果而这种任何一方不能够转换为int型,就会将二者进行字符串的拼接 #}
{{ "2"|add:"3" }}
{# 在DTL模板中不能够定义列表,所以在views.py视图函数中进行定义列表,#}
{#之后使用add过滤器就可以将两个列表进行拼接成一个列表 #}
{{ key1|add:key2 }}
</body>
</html>
from django.shortcuts import render
def cut(request):
context ={
'info':'I am a girl !'
}
return render(request,'cut.html',context=context)
<body>
{{ info|cut:'a' }}
</body>
格式字符串 | 描述 | 示例 |
---|---|---|
Y | 四位数字的年份 | 2018 |
m | 两位数字的月份 | 01-12 |
n | 月份,1-9前面没有0前缀 | 1-12 |
d | 两位数字的天 | 01-31 |
j | 天,但是1-9前面没有0前缀 | 1-31 |
g | 小时,12小时格式的,1-9前面没有0前缀 | 1-12 |
h | 小时,12小时格式的,1-9前面有0前缀 | 01-12 |
G | 小时,24小时格式的,1-9前面没有0前缀 | 1-23 H |
i | 分钟,1-9前面有0前缀 | 00-59 |
s | 秒,1-9前面有0前缀 | 00-59 |
示例代码如下:
from django.shortcuts import render
from datetime import datetime
def date(request):
context = {
'now': datetime.now()
}
return render(request,'date.html',context=context)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{{ now|date:'Y-n-d G:i:s' }}
</body>
</html>
from django.shortcuts import render
def join(request):
context = {
'value':['python','django','flask']
}
return render(request,'join.html',context=context)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{{ value|join:"+" }}
</body>
</html>
浏览器中查看运行结果如下所示:
<p>{{ value|join:"+" }}</p>
<p>{{ value|length }}</p>
在浏览器中查看获取的列表的长度:
{# 将value值中所有的字符全部转换成小写 #}
{{ value|lower }}
{# 将value值中所有的字符全部转换成大写 #}
{{ value|upper }}
浏览器中查看运行结果:
def random(request):
context = {
'value':[1,2,3,4]
}
return render(request,'random.html',context=context)
{# 每一次刷新都会从value中选出一个随机值 #}
{{ value|random }}
from django.shortcuts import render
def random(request):
context = {
'value':[1,2,3,4],
'value1':"<a href='https://wwww.baidu.com'>百度</a>"
}
return render(request,'random.html',context=context)
{# 如果value是一个不包含任何特殊字符串,比如<a>这种,那么以上代码就会把字符串正常的输入, #}
{# value值是包含html的代码,那么就可以使用safe过滤器将html代码渲染到浏览器中 #}
<p>{{ value|safe }}</p>
<p>{{ value1|safe }}</p>
{# 不关闭自动转义,进行查看 #}
<p>{{ value1 }}</p>
在浏览器中查看safe过滤器运行结果:
def slice(request):
context = {
'value':['1','5','4','3']
}
return render(request,'slice.html',context=context)
<body>
<!--将会把值value从2处开始进行切片-->
{{ value|slice:"2:" }}
</body>
{{ value|striptags }}
{{ value|truncatechars:5 }}
{{ value|truncatechars_html:5 }}
<!--例如-->
value:<p>欢迎来到斯坦福大学</p>
<!--如果使用truncatechars_html进行切割的话,就会返回<p>北京...</p>-->
<!--但是如果使用truncatechars进行切割的话,就会返回<p...-->
Python中的过滤器add、cut、date、join、length、lower、upper、random、safe、slice、truncatechars、truncatechars_html
原文:https://www.cnblogs.com/guyan-2020/p/12201524.html