08 Django 模板进阶

本节主要讲 Django模板中的循环,条件判断,经常使用的标签,过滤器的使用

  1. 列表,字典,类的实例的使用html

  2. 循环:迭代显示列表,字典等中的内容django

  3. 条件判断:判断是否显示该内容,好比判断是手机访问,仍是电脑访问,给出不同的代码。oop

  4. 标签:for,if 这样的功能都是标签。学习

  5. 过滤器:管道符号后面的功能,好比{{ var|length }},求变量长度的 length 就是一个过滤器。

 

若是须要将一个或多个变量共享给多个网页或者全部网页使用,好比在网页上显示来访者的IP,这个可使用 Django 上下文渲染器 来作。spa

实例1、显示一个基本的字符串在网页上code

实例2、讲解了基本的 for 循环 和 List内容的显示htm

实例3、显示字典中内容blog

实例4、在模板进行 条件判断和 for 循环的详细操做教程

在for循环中还有不少有用的东西,以下:索引

变量 描述
forloop.counter 索引从 1 开始算
forloop.counter0 索引从 0 开始算
forloop.revcounter 索引从最大长度到 1
forloop.revcounter0 索引从最大长度到 0
forloop.first 当遍历的元素为第一项时为真
forloop.last 当遍历的元素为最后一项时为真
forloop.parentloop

用在嵌套的 for 循环中,

获取上一层 for 循环的 forloop

当列表中可能为空值时用 for  empty

<ul> {% for athlete in athlete_list %} <li>{{ athlete.name }}</li> {% empty %} <li>抱歉,列表为空</li> {% endfor %} </ul>

views.py

from django.shortcuts import render from django.http import HttpResponse # Create your views here.

def index(request): # 一、显示一个基本的字符串在网页上
    string = '我在自强学院学习Django教程,很是感谢做者的无私奉献!'
    # 二、基本的 for 循环 和 List内容的显示
    TutorialList = ['HTML','CSS','jQuery','Python','Django'] # 三、显示字典中的内容
    info_dic = {'site':'自强学堂','content':'各类IT技术教程'} # 四、条件判断和for循环
    list = map(str,range(21)) return render(request,'index.html',{'string':string,'TutorialList':TutorialList, 'info_dict':info_dic,'list':list})

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>MyTitle</title>
</head>
<body> {{ string }} <p> 教程列表: {% for i in TutorialList %} <li>{{ i }}</li> {% endfor %} </p>
<p><ol>

    <li>站点:{{ info_dict.site }}</li>
    <li>内容:{{ info_dict.content }}</li>
    </ol>
</p>
<p> {% for item in list %} {{ item }}{% if not forloop.last %},{% endif %} {% endfor %} </p>
</body>
</html>
相关文章
相关标签/搜索