模板分为静态部分和动态部分,其中动态部分主要就是模板语言,下面通过模板变量、标签、过滤器、注释几个方面进行说明。
1.模板变量
首先打开book/views.py文件,创建一个test_book()视图函数(这里创建一个类进行调用);
class Test_book:
def __init__(self):
pass
def pfunc(self):
return "hello"
def test_book(request):
tb = Test_book()
return render(request,'book/test_book.html',{"tb":tb})
接着,打开book/urls.py文件并进行url配置;
url(r"^test_book",test_book),
然后,在templates/book下创建test_book.html,代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{
{ tb.pfunc }}
</body>
</html>
效果如下:
2.标签
模板中的常见标签有for、if、比较运算符、布尔运算符等,下面简单创建一个应用说明。
将上述的test_book.html进行修改,代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{
{ tb.pfunc }}<br>
{
{book.0}} - {
{book.1}}<br>
<table>
<tr>
<th>编号</th>
<th>书名</th>
<th>价格</th>
</tr>
{% for book in books %}
<!--当前是第几次循环-->
{% if forloop.counter > 1 %}
<tr style="background:gray">
{% else %}
<tr>
{% endif %}
<td>{
{book.id}}</td>
<t