今天简单的介绍一下Django的template的渲染和Django的template的基本的语法

首先我们先启动一个django的shell,首先需要进入django的工程目录下启动django的shell

然后导入django的template模块的template方法和Context方法

1、首先我们来看下简单的变量查询进行渲染

模板定义了有2个变量,一个是name一个是age,然后Context(上下文)分别对这2个变量进行赋值,然后用render方法对template进行渲染

================================================================================================================

下面我们会学习如何把一个字典或者列表传递到上下文中,其实方法很简单,这里必须要用到字典【xxxx】,把我们要传递的字典或者列表作为字典【xxxx】的value传递

到上下文中,然后在template中通过k去获取value,也就是要我们要传递的字典或者列表

2、然后我们还可用字典来对template进行渲染,这里要注意,在python中取字典的value需要用到中括号,但是在django中取字典的value要用到点号

这里先定义了一个字典person,然后在上下文中把这个字段person作为另外一个字段的value的值传递进去

3、最后我们还可以用列表对template进行渲染,这里要注意,在python中取列表的某个元素要用到中括号,但是在django中取列表的元素要用到点号

同样,也要用字典的方式,把列表作为字典的value的值传递给上下文,然后在进行渲染

下面我们在简单的介绍下tempalte的语法

1、先在工程的url中配置如下一条url

2、在工程的vews视图文件中配置这样一个函数,传递一个额外的字典给html文件,下面我们就需要在html文件中处理这个额外的字典

3、使用tempalte的for循环获取字典中的每一个元素,代码如下

效果如下

4、下面我们要的效果是,如果年龄为27,则给这个标签加上固定的样式,代码如下,for循环中套一个if判断

效果如下

5、下面我们实现的效果是如果循环的次数大于2,那么我们给这个标签加上样式,这里主要是学习forloop.counter这个变量,这个变量的意思就是当前循环的次数,从1开始,如果是forloop.counter0,则从0开始计数;代码如下

效果如下

最后我们在来学习一下tempalte的继承

1、首先需要在子模板文件中继承指定的父模板文件,写法如下,下面的例子实现的效果是子模板所有的文件都被父模板覆盖,这个其实不是我们要的目的,这里需要注意,就是一个html最多只可以继承一个html文件;

2、然后我们要在父模板中定义,哪些标签是允许子模板更改的,这里的xxxx是可以任意定义的,这理的意思就是在block和endblock之前的标签是允许子模板更改的

3、我们在子模板中可以重新定义父模板允许我们更改的标签的内容,但是其他的标签则会继承父模板,下面的例子就重写了允许修改的标签的内容

实现的效果如下

Django基础学习六之渲染的更多相关文章

  1. Django基础学习二

    今天继续学习django的基础 学习用户提交url如何获得返回值 1.首先需要在工程的urls文件定义指定的urls要路由给哪个函数 在这个例子中,我们定义home的urls路由给views里的tes ...

  2. Django基础学习笔记

    Django开发流程 创建一个django项目:命令:django-admin startproject 项目名 进入到项目并创建一个应用:命令:python manage.py startapp 应 ...

  3. Django基础学习七之如何配置django+mysql

    很久没有更新博客了,也有段时间没有持续性的学习了,感觉堕落了,今天继续开始学习吧 今天主要来学习一下在django下配置mysql的数据库和使用admin用户管理数据库 1.在project中的set ...

  4. Django基础学习五_引入静态文件

    今天继续学习Django,今天主要掌握两个小点 一.如果为Django项目中引入静态文件 1.先要在project目录下创建static的目录,然后将jquery文件拷贝这个目录下就可以了 2.在pr ...

  5. Django基础学习四_数据库的增删改查

    今天主要学习两个东西 1.如何对数据库做增删改查 2.如果将数据库中的数据用html的方式返回到前台 一.对数据库中增删改查操作 1.首先需要先见表,见表的方法我们在“http://www.cnblo ...

  6. Django基础学习三_路由系统

    今天主要来学习一下Django的路由系统,视频中只学了一些皮毛,但是也做下总结,主要分为静态路由.动态路由.二级路由 一.先来看下静态路由 1.需要在project中的urls文件中做配置,然后将匹配 ...

  7. Django基础学习一

    Django需要安装Django和jinja2,所以在开始学习之前,要先按照Django模块和jinja2模块,Django默认的数据库是SQLite,所以建议大家在学习之前需要先安装SQLite 一 ...

  8. DJANGO基础学习之转义总结:escape,autoescape,safe,mark_safe

    何谓转义?就是把html语言的关键字过滤掉.例如,<div>就是html的关键字,如果要在html页面上呈现<div>,其源代码就必须是<div> PS:转义其实就 ...

  9. scala言语基础学习六

    trait的学习 1.将trait作为接口来使用 trait中可以实现一些方法,子类只要extends 了trait就可以直接使用父trait里面的方法 普通继承的话父类和子类之间的field是通过引 ...

随机推荐

  1. 06-jenkins的账号相关的问题

    飞测说:最近几天,在团队分享jenkins后,大家都十分感兴趣,各自下载安装和练习,然而jenkins2.3安装默认有权限设置,这块好多人遇到了问题,现在统一就账号登录的问题一起看看,踩过的坑,希望对 ...

  2. fiddler模拟限速实战

    原理:Fiddler的模拟限速是在客户端请求前来自定义限速的逻辑,此逻辑是通过延迟发送数据或接收的数据的时间来限制网络的下载速度和上传速度,从而达到限速的效果. 算法:那么我们的算法就是 1000/下 ...

  3. Hadoop和HBase中出现 ssh登录 The authenticity of host 192.168.0.xxx can't be established.

    用ssh登录一个机器(换过ip地址),提示输入yes后,屏幕不断出现y,只有按ctrl + c结束 错误是:The authenticity of host 192.168.0.xxx can't b ...

  4. BZOJ4350: 括号序列再战猪猪侠【区间DP】

    Description 括号序列与猪猪侠又大战了起来. 众所周知,括号序列是一个只有(和)组成的序列,我们称一个括号序列S合法,当且仅当: 1.( )是一个合法的括号序列. 2.若A是合法的括号序列, ...

  5. C# 根据twitter的snowflake算法生成唯一ID

    C# 版算法: using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...

  6. Windows下使用curl命令

    curl下载地址: https://curl.haxx.se/download.html 选择对应的版本下载后解压 使用方式(一):在解压后curl.exe所在目录打开cmd,即可使用 使用方式(二) ...

  7. JavaBean和Map的相互转换

    JavaBean和Map的相互转换 一.JavaBean 1.什么是JavaBean? JavaBean其实就是一种遵循特定写法的类,必须遵循一定的规范: 类必须由public修饰,并且保证有公共的无 ...

  8. python中多进程+协程的使用以及为什么要用它

    前面讲了为什么python里推荐用多进程而不是多线程,但是多进程也有其自己的限制:相比线程更加笨重.切换耗时更长,并且在python的多进程下,进程数量不推荐超过CPU核心数(一个进程只有一个GIL, ...

  9. (转)性能分析之-- JAVA Thread Dump 分析综述

    原文链接:http://blog.csdn.net/rachel_luo/article/details/8920596 最近在做性能测试,需要对线程堆栈进行分析,在网上收集了一些资料,学习完后,将相 ...

  10. weex入门篇

    weex入门篇 Weex 致力于使开发者能基于当代先进的 Web 开发技术,使用同一套代码来构建 Android.iOS 和 Web 应用. weex SDK 集成了vueJS,Rax,不需要额外引入 ...