模版变量
render(request, templates.html, context=dict_variable)
使用的时候需要给context
赋值一个dict
变量- 假设该
dict
变量是d
,它的键是kk
,kk
对应的值是vv
- 假设该
- 将这个
kk
放到模板中,格式是{{ kk }}
,render执行的时候就会将kk
替换成vv
- 如果想要访问对象的属性,也就是
kk
是一个类的实例,那么可以通过kk.属性名
来访问 - 如果
vv
是一个字典,想要访问他的key:subkey
对应的value:subvalue
,只能通过{{kk.subkey}}
,不能通过{{kk[subkey]}}
访问- 所以不能将字典的键设置为
keys
values
items
其中一种,会覆盖dict.keys
dict.values
dict.value
属性
- 所以不能将字典的键设置为
- 如果想要访问列表或者元组,通过
kk.index
和即可进行访问,不能通过kk[index]
进行访问,其中index
是列表/元组索引 - 例子
```python#urls.py
urlpattern = [
path('templates/', v.url_templates),
]
urls.py
class Person(object): def init(self, name): self.name = name return
p = Person(“Lee”)
d = { “param”: “jack”, # 该key对应一个str “person”: p, # 该key对应一个实例对象 “dict”: { # 该key对应一个字典 “index1”: 1, “index2”: 2, }, “dict_change”: { # 该key对应一个字典,这个字典的键全部都用了dict的内置函数名 “keys”: “dict.keys has changed”, “values”: “dict.values has changed”, “items”: “dict.items has changed”, },
"list": [ # 该key对应一个list,tuple同理
"list1",
"list2",
],
}
def url_templates(request): return render(request, “index.html”, context=d)
```html
<!-- index.html -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{{ param }}
<br><br>
{{ person.name }}
<br><br>
{{ dict.index1 }}
<br>
{{ dict.keys }}
<br>
{{ dict.values }}
<br>
{{ dict.items }}
<br><br>
{{ dict_change.keys }}
<br>
{{ dict_change.values }}
<br>
{{ dict_change.items }}
<br><br>
{{ list.0 }}
<br>
</body>
</html>
- 运行