今天简单的介绍一下Django的template的渲染和Django的template的基本的语法html
首先咱们先启动一个django的shell,首先须要进入django的工程目录下启动django的shellpython
而后导入django的template模块的template方法和Context方法shell
一、首先咱们来看下简单的变量查询进行渲染django
模板定义了有2个变量,一个是name一个是age,而后Context(上下文)分别对这2个变量进行赋值,而后用render方法对template进行渲染函数
================================================================================================================oop
下面咱们会学习如何把一个字典或者列表传递到上下文中,其实方法很简单,这里必需要用到字典【xxxx】,把咱们要传递的字典或者列表做为字典【xxxx】的value传递学习
到上下文中,而后在template中经过k去获取value,也就是要咱们要传递的字典或者列表url
二、而后咱们还可用字典来对template进行渲染,这里要注意,在python中取字典的value须要用到中括号,可是在django中取字典的value要用到点号3d
这里先定义了一个字典person,而后在上下文中把这个字段person做为另一个字段的value的值传递进去htm
三、最后咱们还能够用列表对template进行渲染,这里要注意,在python中取列表的某个元素要用到中括号,可是在django中取列表的元素要用到点号
一样,也要用字典的方式,把列表做为字典的value的值传递给上下文,而后在进行渲染
下面咱们在简单的介绍下tempalte的语法
一、先在工程的url中配置以下一条url
二、在工程的vews视图文件中配置这样一个函数,传递一个额外的字典给html文件,下面咱们就须要在html文件中处理这个额外的字典
三、使用tempalte的for循环获取字典中的每个元素,代码以下
效果以下
四、下面咱们要的效果是,若是年龄为27,则给这个标签加上固定的样式,代码以下,for循环中套一个if判断
效果以下
五、下面咱们实现的效果是若是循环的次数大于2,那么咱们给这个标签加上样式,这里主要是学习forloop.counter这个变量,这个变量的意思就是当前循环的次数,从1开始,若是是forloop.counter0,则从0开始计数;代码以下
效果以下
最后咱们在来学习一下tempalte的继承
一、首先须要在子模板文件中继承指定的父模板文件,写法以下,下面的例子实现的效果是子模板全部的文件都被父模板覆盖,这个其实不是咱们要的目的,这里须要注意,就是一个html最多只能够继承一个html文件;
二、而后咱们要在父模板中定义,哪些标签是容许子模板更改的,这里的xxxx是能够任意定义的,这理的意思就是在block和endblock以前的标签是容许子模板更改的
三、咱们在子模板中能够从新定义父模板容许咱们更改的标签的内容,可是其余的标签则会继承父模板,下面的例子就重写了容许修改的标签的内容
实现的效果以下