Django 模板标签
模板标签
在 Django 模板中,可以执行编程逻辑,比如执行 if 语句和 for 循环。
这些关键字, if 与 for,在 Django 中都被称为 "模板标签"。
为了执行模板标签,我们将它们放在 {% %} 括号中。
实例
templates/testing_tags.html:
{% if greeting == 1 %}<h1>Hello</h1>{% else %}<h1>Bye</h1>{% endif %}
来自模型的数据
上面的例子展示了如何在模板中使用模板标签和变量的简单方法。
通常,要在模板中使用的大多数外部数据都来自模型。
我们在前几章中创建了一个名为 "Members" 的模型,我们将在本教程的下几章中使用该模型。
我们还将创建一个新的视图,该视图将在下一章的所有示实例使用:
members/views.py:
from django.http import HttpResponse, HttpResponseRedirectfrom django.template import loaderfrom .models import Membersdef testing(request):mymembers = Members.objects.all().values()template = loader.get_template('testing_tags.html')context = {'mymembers': mymembers,}return HttpResponse(template.render(context, request))
在每个实例中,模板的内容都会发生变化,以更好地演示模板标签,就像下面演示 for 标签一样:
实例
<ul>{% for x in mymembers %}<li>{{ x.firstname }}</li>{% endfor %}</ul>
结果
- Emil
- Tobias
- Linus
- Lene
- Stalikken