为了方便理解先了解一下python的字符串格式化。
我们还可以进行映射传参
string='''
hello world I am%(name)s',I' m %(age)s years old''
print (string%{"name":"李天松",age:22})
在看一下format
django的HTML渲染也是这样的,开发者首先写好网站静态的部分,这部分是HTML代码,然后使用python语法,将动态数据填写上去,那么在这里,把加载HTML部分叫做加载部分,动态数据填写部分叫做渲染部分,两者结合叫做django的模板系统。
代码
views.py
from django.http import HttpResponse
import time
from django.template import Template,Context
#template模板 context上下文背景
def sayhobby(request):
string="""
<html>
<head>
<title>
index
</title>
</head>
<body>
<p>hello i am{{name}},i like :<p>
{% for h in hobby %}
<p style="color:red">{{h}}</p>
{% endfor %}
</body>
</html>
"""
dicts={
"name":"天主极乐大帝",
"hobby":[
"eat","sing","python","linux"
]
}#这只是一个字典数据
t=Template(string)#构建模板结构
c=Context(dicts)#构建渲染结构
result=t.render(c)#进行数据渲染
return HttpResponse(result)#返回结果