Python Django模板之模板过滤器与自定义模板过滤器示例
作者:houyanhua1 发布时间:2023-10-31 20:37:48
标签:Python,Django,模板过滤器
本文实例讲述了Python Django模板之模板过滤器与自定义模板过滤器。分享给大家供大家参考,具体如下:
模板过滤器
过滤器用于对模板变量进行操作。
date:改变日期的显示格式。
length:求长度。字符串,列表。
default:设置模板变量的默认值。
格式:模板变量|过滤器:参数
自定义过滤器。
自定义的过滤器函数,至少有一个参数,最多两个
例如:
{{ book.btitle|length }} # 返回字符串或列表的长度
{{ book.bpub_date|date:'Y年-m月-d日' }} # 格式化日期格式
{{ content|default:'hello' }} # 为不存在的变量指定默认值。
自定义模板过滤器
应用名/templatetags/filters.py(自定义过滤器函数,templatetags文件名固定):
# 自定义过滤器
# 过滤器其实就是python函数
from django.template import Library
# 创建一个Library类的对象
register = Library()
# 自定义的过滤器函数,至少有一个参数,最多两个。(第一个参数就是要过滤的模板变量)
@register.filter
def mod(num):
'''判断num是否为偶数'''
return num%2 == 0
@register.filter
def mod_val(num, val):
'''判断num是否能被val整除'''
return num%val == 0
demo.html(模板文件,使用自定义过滤器):
<!DOCTYPE html>
<html lang="en">
{% load filters %} {# load标签加载自定义过滤器的py文件。和templatetags/filters.py 的py文件名一致。 #}
<head>
<meta charset="UTF-8">
<title>模板过滤器</title>
</head>
<body>
<ul>
{# {% if book.id|mod %}#} {# 使用自定义的过滤器。需要先load自定义过滤器的py文件 #}
{% if book.id|mod_val:3 %} {# 使用自定义的过滤器 #}
。。。
{% else %}
。。。
{% endif %}
</ul>
</body>
</html>
希望本文所述对大家基于Django框架的Python程序设计有所帮助。
来源:https://blog.csdn.net/houyanhua1/article/details/84999202
0
投稿
猜你喜欢
- 需要将字符串中的空格去掉的情况,可以使用下面几种解决方法:1、strip()方法:该方法只能把字符串头和尾的空格去掉,但是不能将字符串中间的
- 本文实例为大家分享了pytorch绘制曲线的具体代码,供大家参考,具体内容如下import torchimport torch.nn.fun
- PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单
- 一、为什么要包管理默认Go的第三方包都是放在Gopath的src目录下,而且这些包都没有版本号的概念,这样的可能会出现一些问题。举个例子:当
- 什么是formset我们知道forms组件是用来做表单验证,更准确一点说,forms组件是用来做数据库表中一行记录的验证。有forms组件不
- 一、所需工具**Python版本:**3.5.4(64bit)二、相关模块opencv_python模块sklearn模块numpy模块dl
- 数据库事务隔离级别数据库事务的隔离级别有4个,由低到高依次为Read uncommitted:允许脏读。Read committed: 防止
- ob缓存介绍ob是output buffering的简称,输出缓冲区,缓冲区是通过php.ini中的output_buffering变量控制
- 一、MySQL中如何表示当前时间?其实,表达方式还是蛮多的,汇总如下:CURRENT_TIMESTAMPCURRENT_TIMESTAMP(
- 目标:执行之后会在D盘生成一个jt+当前时间.png,该图片为百度首页截图一 get_screenshot_as_file# -*- cod
- 1. torch- torchvision- python版本对应关系2. CUDA Toolkit 和PyTorch的对应关系3. 安装说
- 一、使用css缩写使用缩写可以帮助减少你CSS文件的大小,更加容易阅读。css缩写的主要规则请参看《常用css缩写语法总结》,这里就不展开描
- 实例如下所示:import osos.chdir("G:\Python1\Lib\site-packages\pytesser&q
- 如下所示:def resize(src, dsize, dst=None, fx=None, fy=None, interpolation=
- 前言ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在2015年6月正式发布了。它的目标,是
- 网上关于使用python 的发送multipart/form-data的方法,多半是采用ulrlib2 的模拟post方法,如下
- MySQL是一个多线程的,结构化查询语言(SQL)数据库服务器。SQL在世界上是最流行的数据库语言。MySQL的执行性能非常高,运行速度非常
- 因为项目需要数据验证,看bootstrapValidator 还不错,就上手一直,完美兼容,话不多说。bootstrap:能够增加兼容性的强
- 以下测试用于去除任何字符串中连线的分隔符 代码如下:--去除字符串中连续的分隔符 declare @str nvarchar(200) de
- 代码如下:--程序员们在编写一个雇员报表,他们需要得到每个雇员当前及历史工资状态的信息, --以便生成报表。报表需要显示每个人的晋升日期和工