??斗地主捕鱼电竞提现秒到 广告位招租 - 15元/月全站展示
??支付宝搜索579087183领大额红包 ??伍彩集团官网直营彩票
??好待遇→招代理 ??伍彩集团官网直营彩票
??络茄网 广告位招租 - 15元/月全站展示
Django4.1_template之变量和过滤器

转载   易水寒月   2018-11-14   浏览量:16


一.简述
在现在的web实际开发中,为了更加规范的编码及方便后期的项目规划,我们要求前后端分离,前端更进一步要求布局(HTML)、样式(CSS)、行为(JS)分离。在django中,我们把template分离出来作为一个独立的??槔创鞨TML。本章节主要讲解django中的template??榈氖褂?。
二.模板语法
模板组成:HTML+逻辑代码
三.模板之逻辑代码
1.模板渲染的原理
两个概念:
template:模板
context:上下文
渲染原理(过程):
A.Django先通过Template生成一个实例化template对象;
B.Diango再通过Context生成一个实例化context对象;
C.Djangi通过template实例调用渲染方法(例如:render())来渲染生成结果;
如图:
Django4.1_template之变量和过滤器
代码块如下:

>> from django.template import Template,Context
>> template = Template("welcome to {{name}}.")
>> context = Context({'name':'浙江'})
>> template.render(context)
'welcome to 浙江.'

注:以上的过程是在django内部实现的,比较复杂,所以我们直接使用django封装好的方法实现该效果即可,即render(request,’template对象文件’,data)或render(request,’template对象文件’,local())
同一个模板对象可以重复使用。
2.模板之变量
2.1格式:{{varname}}
在HTML中使用双引号包裹变量名,再通过view中将变量对应的值传过来(传值有两种方式:1.{key:value};2.locals())。
实例代码如下:
Django4.1_template之变量和过滤器
Django4.1_template之变量和过滤器
Django4.1_template之变量和过滤器
2.2变量的类型及变量深度查询
变量可以是字符串、字典、列表、元组、对象等等。
如图:
Django4.1_template之变量和过滤器

Django4.1_template之变量和过滤器
页面效果图:
Django4.1_template之变量和过滤器
注:在template中使用的均是深度查询,即只能通过符号.(点)进行下一级查询且所有的序列数据类型均能使用索引正常查询但不能使用方括号的格式,只能使用var.index的格式,不能使用var[index]或dic[key]的格式。
2.3
3.模板之过滤器
注:该部分图片来自网络(如有侵权,联系删除)
Django4.1_template之变量和过滤器
Django4.1_template之变量和过滤器
Django4.1_template之变量和过滤器
Django4.1_template之变量和过滤器
Django4.1_template之变量和过滤器

欢迎关注笔者个人公众号:
Django4.1_template之变量和过滤器

转载自://blog.51cto.com/10836356/2317077

招聘 不方便扫码就复制添加关注:程序员招聘谷,微信号:jobs1024



常用数据库操作语句(1)
建库CREATEDATABASEIFNOTEXISTSgloryroadDEFAULTCHARSETutf8COLLATEutf8_general_ci;建表createtablestudentInfo(IDintnotnullauto_incrementcomment"不为空的自增长的主键ID",student_idvarchar(20)notnull,namevarchar
python3异步编程-实例
Python3异步编程实例篇本篇主要内容:启动一个线程启动多线程获取线程名字让线程按顺序执行给线程加上日志线程类的实现线程锁多线程使用全局变量下锁的重要性锁嵌套的问题使用队列来存储线程数据取得线程中的线果多线程与非多线程性能对比多线程与非多线程I/O操作线程池的使用一、用threading启动一个线程示例代码:#!/usr/bin/python3importtimefromthreadingimp
django自定义sql返回元组的处理
1.views.pydefscheduling(request):cursor=connection.cursor()cursor.execute("selectstaff_namefromalarm_platform.TBL_STAFFwherestaff_number=any(selectduty_staff_number1fromalarm_platform.TBL_DUTY);",None
python伪代码之爬取完美志愿全国历年文理分数线运行代码持续更新
最近好多小伙伴说想搞个项目实战类的,我就花了一点时间做了一个爬虫项目(在代码复制的时候可能会有点问题,缩格一下就没有问题了)想要获取更多源码或者答疑或者或者交流学习可以加群:725479218#-*-coding:utf-8-*-fromfunction.data_toolimportclean_dataimporthashlibimportfurl.furlfromcrawlers.downlo
Python基础--字典(dictionary)
1.字典的定义,键唯一,值随意dic={key0:value0,key1:value1}2.输出print(dic[key0])>>:value03.遍历字典3.1keys()遍历字典中的keydic={'name':'zhangsan','age':20}forkindic.keys():print(k)>>:nameage3.2values()遍历字典中的valuedi
Python基础--元组(tuple)
1.元组的定义,元组与列表不同之处在于元组中的元素不能修改:tup1=('张三','李四',123)2.读取元组数据,和列表相同print(tup1[0])>>:张三3.index()方法,返回元素在元组中得位置,不存在则报错print(tup1.index('张三'))>>:04.count()计算元素在元组中出现的次数print(tup1.count(123))>
Python面向对象程序设计之抽象工厂模式之二-一个更加pythonic的抽象工厂
????上一篇文章我们说到DiagramFactory和其SvgDiagramFactory子类以及它们使用到的类比如(Diagram,SvgDiagram等等),能够很好的实现预订的功能并且也符合抽象工厂的设计模式。然而,我们的实现并非是非常完美的,至少还有以下几点不足:我们并不需要保存每个工厂的状态,因此,在向create_diagram传递参数的
【Python基础】流程控制-break及continue使用及while..else的使用
'''break用于结束一个完整的循环,跳出循环体执行循环后面的语句continue用于跳出本次循环,但继续下一个循环''''''continue的用法打印1-10的数字,3除外'''#count=1#whilecount<=10:#ifcount==3:#count+=1##如果不添加count+=1当打印到3,直接跳出本次循环这个时候count还是3,就无法进行下次循环#continue
【Python基础】流程控制-while循环
#while循环'''while条件判断:满足条件执行的代码...条件判断的根本是True和False的判断True才会执行False不会执行通过一下方法来打印条件是True或者Falsea=10b=20print(a>b)print(b>a)'''#值条件判断:#a=3#b=5#正常条件判断#whilea>b:#print("啦啦啦")#死循环#whileTrue:#print