zoukankan      html  css  js  c++  java
  • Django基础学习六之渲染

    今天简单的介绍一下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、我们在子模板中可以重新定义父模板允许我们更改的标签的内容,但是其他的标签则会继承父模板,下面的例子就重写了允许修改的标签的内容

    实现的效果如下

  • 相关阅读:
    SqlServer卸载实例
    java写的各种钟(收集)
    Codeforces 1003D Coins and Queries 【性质】
    Codeforces 997B Roman Digits【暴力】【枚举】
    洛谷 P2679 子串 【dp神题】【滚动数组】【2015 noip d2t2】
    复习图论
    Codeforces 1000D Yet Another Problem On a Subsequence 【dp】【组合数学】
    Codeforces 1000C Covered Points Count 【前缀和优化】
    Codeforces 999F Cards and Joy 【dp】【性质】
    Codeforces 999D Equalize the Remainders 【模拟】
  • 原文地址:https://www.cnblogs.com/bainianminguo/p/7862410.html
Copyright © 2011-2022 走看看