Django框架相关标签逻辑操作

for循环

{% for person in person_list %}
    <p>{{ person.name }}</p>  <!--凡是变量都要用两个大括号括起来-->
{% endfor %}

#遍历字典
{% for key,val in dic.items %}
    <p>{{ key }}:{{ val }}</p>
{% endfor %}

#循环序号可以通过{{forloop}}显示,必须在循环内部用
forloop.counter            当前循环的索引值(从1开始),forloop是循环器,通过点来使用功能
forloop.counter0           当前循环的索引值(从0开始)
forloop.revcounter         当前循环的倒序索引值(从1开始)
forloop.revcounter0        当前循环的倒序索引值(从0开始)
forloop.first              当前循环是不是第一次循环(布尔值)
forloop.last               当前循环是不是最后一次循环(布尔值)
forloop.parentloop         本层循环的外层循环的对象,再通过上面的几个属性来显示(获取)外层循环的计数等
#示例:
    {% for k,v in d1.items %}
    <li>{{ forloop.counter }}-- {{ forloop.parentloop.counter }} === {{ k }} -- {{ v }}</li>
    {% endfor %}

#*******************************************
#for 标签带有一个可选的{% empty %} 从句,以便在给出的数据是空的或者没有被找到时,就执行empty从句。
    {% for person in person_list %}
        <p>{{ person.name }}</p>
    {% empty %}
        <p>sorry,no person here</p>
    {% endfor %}

if判断

#{% if %}会对一个变量求值,如果它的值是“True”(存在、不为空、且不是boolean类型的false值),满足那个条件就执行那个条件
    {% if num > 100 or num < 0 %}
        <p>无效</p>  <!--不满足条件,不会生成这个标签-->
    {% elif num > 80 and num < 100 %}
        <p>优秀</p>
    {% else %}  <!--也是在if标签结构里面的-->
        <p>凑活吧</p>
    {% endif %}
#if语句支持 and 、or、==、>、<、!=、<=、>=、in、not in、is、is not判断,注意条件两边都有空格。

with

#使用一个简单地名字缓存一个复杂的变量,多用于给一个复杂的变量起别名
#方式一:
    {% with total=business.employees.count %}
    {{ total }} <!--只能在with语句体内用-->
    {% endwith %}
#方式er:
    {% with business.employees.count as total %}
    {{ total }}
    {% endwith %}

原文地址:https://www.cnblogs.com/luckinlee/p/11622250.html

时间: 2024-10-14 13:12:42

Django框架相关标签逻辑操作的相关文章

Django框架自定义标签和过滤器

自定义过滤器 '''定义一个无参数过滤器''' 1:#:在当前的应用中创建一个templatetags的文件夹(必须叫这个名字),然后在文件夹中创建一个python文件,名字随便 2:#在新建的python中引入django模块的template类,然后实例化一个register对象,对象的名字必须是register from django import template register = template.Library()#register对象名字不可更改 3:#在新建的python中定

Python的Django框架中的Cookie相关处理

Python的Django框架中的Cookie相关处理 浏览器的开发者在很早的时候就已经意识到, HTTP's 的无状态会对Web开发者带来很大的问题,于是(cookies)应运而生. cookies 是浏览器为 Web 服务器存储的一小段信息. 每次浏览器从某个服务器请求页面时,它向服务器回送之前收到的cookies 来看看它是怎么工作的. 当你打开浏览器并访问 google.com ,你的浏览器会给Google发送一个HTTP请求,起始部分就象这样: GET / HTTP/1.1 Host:

Django框架&lt;一&gt;

Django框架 Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 一.django的安装实现和目录介绍 1.django实现流程 django #安装: pip3 install django 添加环境变量 #1 创建project django-admin startproject mysite ---mysite ---settings.p

Django框架

Django框架全面讲解 Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 本文将带大家全面了解Django框架,笔者使用的版本为1.10. 1 Django流程介绍 2 Django 基本配置 一.创建django程序 终端命令:django-admin startproject sitename  (在当前目录下创建一个Django程序) I

框架----Django框架知识点整理

一.cbv 1 cbv(class-base-view) 基于类的视图 2 fbv(func-base-view) 基于函数的视图 a.基本演示 1 urlpatterns = [ 2 3 url(r'^login.html$', views.Login.as_view()), 4 ] urls.py 1 from django.views import View 2 3 class Login(View): 4 """ 5 get 查 6 post 创建 7 put 更新

python django框架(一)

s4day63内容回顾: 1. 安装 2. 创建用户 + 授权 3. 连接 - 数据库 终端创建数据库(字符编码) - 数据表 终端 ORM pymysql create ...)engine=innodb - 数据行 增 删 改 查 - limit - group by .... 关闭 问题:简述ORM原理? day64内容 1. 自己开发Web框架 - socket - http协议 - HTML知识 - 数据库(pymysql,SQLAlchemy) HTTP特点: 无状态.短连接 TCP

Django框架基础

Django基础-Lesson1 web框架概念 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统. 对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端.  socket模拟服务端 最简单的Web应用就是先把HTML用文件保存好,用一个现成的HTTP服务器软件,接收用户请求,从文件中读取HTML,返回. 如果要动态生成HTML,就需要把上述步骤自己来实现.不过,接受HTTP

那些年我们一起玩的Django框架之全面讲解

Web框架之Django: (1)简介: Django是一个由Python写成开源的重量级Web应用框架,采用MTV的框架模式.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件.并于2005年7月在BSD许可证下发布.这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的.Django的优势在于:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. (2)Django的处理流程: 1.   

Django框架之第二篇

Django框架之第二篇 一.知识点回顾 1.MTV模型 model:模型,和数据库相关的 template:模板,存放html文件,模板语法(目的是将变量如何巧妙的嵌入到HTML页面中). views:视图函数 另加urls:url路径与视图函数的映射关系,,可以不是一一对应的. 2.相关的一些命令 创建一个Django项目:django-admin  startproject  projectname 创建一个项目下的应用:python3  manage.py  startapp  appn