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>

 

转载于:https://www.cnblogs.com/wongbingming/p/6899564.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值