• Django入门二之模板语法


    一. 模板变量

    Context传入的可以是一个str,dict,list,甚至是一个实例对象

    在html中如何调用这些对象进行取值呢

    1. 变量名

    {{ variable }}

    返回字符串,无论是str,list,dict

    2. list取值

    {{ list.index }}

    如{{ list.0}},{{ list.1}},分别取list的第一个元素和第二个元素

    3. dict取值

    {{ dict.key }}

    如{{ user.name }} ,name={'name':'Tom'}

    4. 实例取值或调用方法

    {{ instance.attribute }}

    {{ instance.function }}  #不用加括号

    示例展示见下图

    二、 逻辑运算符

    and or 不能共存

    三、 判断语句

    not表示不存在,为空,或者为0

    四、 循环loop

      语法:

    {% for ... in ... %}
    {% endfor %}
     

      

     

     

    判断是否为空有两种方法

       

      循环的索引

    五、过滤器

     过滤器相当于管道,对HTML中的变量执行一系列的函数

     这些过滤器有内置的,也可以自定义:

     这里自定义一个在字符串末尾加%的过滤器

     在app(blog)文件夹下,新建一个名为(templatetags)文件夹(其实是一个包,那么就需要新建一个空的__init__.py文件)

    在文件夹中,新建py文件,名字自取(但要和后面{% load name %})对应起来,这里命名myfilter.py

    #myfilter.py

    from django import template
    register = template.Library()
    
    def percent(value):
        return value + "%"
    
    register.filter(percent)

    #index.html

    {% load myfilter %}
    <h1>男生比例:{{ male_proportion | percent }}</h1>
  • 相关阅读:
    一些前台技巧
    javascript中的面向对象
    vs.net 常用快捷键
    js和C#中的进制转换方法
    MFC中CDC相关图形,文本的一些使用方法(转)
    poj1505
    poj1401
    poj2533
    poj1504
    poj1384
  • 原文地址:https://www.cnblogs.com/wongbingming/p/6899564.html
Copyright © 2020-2023  润新知