本节主要讲 Django模板中的循环,条件判断,常用的标签,过滤器的使用。
-
列表,字典,类的实例的使用
-
循环:迭代显示列表,字典等中的内容
-
条件判断:判断是否显示该内容,比如判断是手机访问,还是电脑访问,给出不一样的代码。
-
标签:for,if 这样的功能都是标签。
-
过滤器:管道符号后面的功能,比如{ { var|length }},求变量长度的 length 就是一个过滤器.
创建一个新的项目和应用,创建的步骤前面以后说了很多次了 这里将不再介绍.当然你也可以继续使用之前的项目及应用.这里为了方便我还是继续使用之前创建好的项目mysite 和learn应用.
1.模板变量的使用
语法:{
{ variable-name }}
我们重新添加一个url
<span style="font-size:14px;">from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
#example
url(r'^$','learn.views.index'),
url(r'^hello/$','learn.views.show'),
url(r'^hello/(\S+)/(\d+)/$','learn.views.show2'),
url(r'^$','learn.views.toTemplate', name='temp')#新增
]</span>
在views.py文件中加入如下方法:
<span style="font-size:14px;">def toTemplate(request):
message=u"我正在学习Django"
return render(request,'home.html',{"message":message})</span>
到learn目录下创建一个templates文件夹.并在里面放置一个home.html页面.内容如下:
<span style="font-size:14px;"><!DOCTYPE html>
<html>
<head>
<title>欢迎光临</title>
</head>
<body>
{
{message}}
</body>
</html></span>
运行服务器,并输入连接:http://127.0.0.1:8000/tem/
你将看到如下页面:
这就是模板变量的应用很简单吧!
基本的 for 循环 和 List内容的显示
views.py
1
2
3
|
def
home(request):
TutorialList
=
[
"HTML"
,
"CSS"
,
"jQuery"
,
"Python"
,
"Django"
]
return
render(request,
'home.html'
, {
'TutorialList'
: TutorialList})
|
在视图中我们传递了一个List到模板 home.html,在模板中这样使用它:
home.html
1
2
3
4
|
教程列表:
{% for i in TutorialList %}
{
{ i }}
{% endfor %}
|
for 循环要有一个结束标记,上面的代码假如我们对应的是首页的网址(自己修改urls.py),显示在网页上就是:
简单总结一下: 一般的变量之类的用 { { }}(变量), 功能类的,比如循环,条件判断是用 {% %}(标签)显示字典中内容:
views.py
1
2
3
|
def
home(request):
info_dict
=
{
'site'
: u
'自强学堂'
,
|