`
lantian_123
  • 浏览: 1359817 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Django 自定义模版标签和过滤器

 
阅读更多

1、在app中新建templatetags目录,目录中新建__init__.py文件名的空文件。

2、编写自定义过滤器  test_filter.py

 

#!/usr/bin/env python
#coding:utf-8

from django import template
from utils.timebefore import timebefore
register = template.Library()
def test_filter(value,arg=None):
    '''扩大原来的2倍''' 
    return value * 2
register.filter('test', test_filter) 

 

当然register.filter('test',test_filter)可以用装饰器代替

@register.filter(name='cut')
def cut(value, arg):
    return value.replace(arg, '')

@register.filter
def lower(value):
    return value.lower()

 如果没有自定过滤器名称,Django使用函数名作为过滤器的名字。

 

3、在模版中开头处加载过滤器  {% load test_filter  %}

4、在模版中使用过滤器:{{2 | test}}

 

自定义标签:

标签的定义比过滤器要复杂,自定义标签需要告诉模版系统如何编译和渲染。

 

参考:

https://docs.djangoproject.com/en/dev/howto/custom-template-tags/

http://stackoverflow.com/questions/8000022/django-template-how-to-lookup-a-dictionary-value-with-a-variable

分享到:
评论

相关推荐

    Django自定义模板过滤器和标签的实现方法

    主要介绍了Django自定义模板过滤器和标签的实现方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下

    django框架自定义模板标签(template tag)操作示例

    django 提供了丰富的模板标签(template tag)和过滤器(tempalte filter),但这些并非完全能满足自己的需要,所以django 也提供了自定义模板标签和filter. 自定义这些标签其实很简单,用一个方法举例,今天有一个需要在...

    Python Django模板之模板过滤器与自定义模板过滤器示例

    本文实例讲述了Python Django模板之模板过滤器与自定义模板过滤器。分享给大家供大家参考,具体如下: 模板过滤器 过滤器用于对模板变量进行操作。 date:改变日期的显示格式。 length:求长度。字符串,列表。 ...

    django 自定义过滤器的实现

    自定义模版过滤器 虽然DTL给我们内置了许多好用的过滤器。但是有些时候还是不能满足我们的需求。因此Django给我们提供了一个接口,可以让我们自定义过滤器,实现自己的需求。 模版过滤器必须要放在app中,并且这个...

    在Django框架中自定义模板过滤器的方法

    主要介绍了在Django框架中自定义模板过滤器的方法,Django是重多人气Python框架中最为著名的一个,需要的朋友可以参考下

    Python的Django框架中自定义模版标签的示例

    主要介绍了Python的Django框架中自定义模版标签的示例,标签的用处比过滤器更多,需要的朋友可以参考下

    CCSUZJJ#django-chinese-docs-1.10#方法指南1

    自定义django-admin命令 (0%)自定义model字段 (0%)自定义查询 (0%)自定义模板标签和过滤器 (0%)自定义存储系统 (0%)错误报告

    django-markup:将文本标记转换为html。 Markdown,rST,纺织品等

    快速开始从python软件包索引(pypi)下载并安装该软件包: $ pip install django-markup请注意,django-markup附带了一些可供使用的过滤器,但是更复杂的软件包(例如Markdown或ReStructuredText)不是代码的一部分...

    Python Django建站教程源代码《玩转Django2.0》配套全部源码 共13个章节 含目录内容.rar

    目 录 第1章 Django建站基础 1 1.1 网站的定义及组成 1 1.2 网站的分类 3 1.3 网站运行原理及开发流程 5 1.4 走进Django 6 1.5 Django 2.0的新特性 7 ...5.3 自定义过滤器 63 5.4 本章小结 68 ......

    django-docs-2.2-zh-hans.zip

    针对程序员: 模板 API | 自定义标签(tags)和过滤器(filters) 表单 Django 提供了一个丰富的框架来帮助创建表单和处理表单数据。 基础: 概览 | 表单 API | 内建字段 | 内建 widgets 进阶: 针对模型的表单 | 整合媒体...

    django 创建过滤器的实例详解

    而恰恰这个模板被很多个视图函数多调用,那么你每次在视图函数中穿这个字符串变量的时候,都要进行字符串的处理,这相对来说是比较麻烦的,django提供了一种叫做过滤器的方式,可以在模板中进行统一处理。...

    typogrify:一组Django模板过滤器可简化网络排版的工作

    仅当您打算使用这些框架随附的可选模板过滤器时,才需要安装或 。用法通过从typogrify.filters导入过滤器,可以在任何环境中使用它们: from typogrify.filters import typogrifycontent = typogrify(content)要与...

    django-blog:用Django编写的功能博客

    管理员,自定义模型管理器,分页,通过电子邮件共享帖子功能,本机评论系统,标记功能,类似帖子检索,自定义模板标签和过滤器,站点地图功能(XML),博客帖子供稿(XML),全文搜索postgresql功能,以及其他一些很...

    django_semantic_ui:具有语义UI布局的Django管理模板

    django_semantic_ui ...已经开发并调整了一些功能,以便在此django管理员中使用语义UI优秀资源作为错误消息,分页,对象列表和过滤器。 下面的主题描述了如何对这些功能中的每一个进行调整。 过滤为菜单项

    django-baton:一个基于Bootstrap 5-https的酷,现代且响应Swift的Django管理应用程序

    詹戈·巴顿 一个基于bootstrap 5的酷,现代,响应Swift的django admin应用... 基于Bootstrap 5和FontAwesome Free 5 全面响应自定义和灵活的侧边栏菜单可配置的搜索字段文本输入过滤器和下拉列表过滤器功能开箱即用的

    django-libs:Django 项目和应用程序的常用构建块

    提供字段详细名称的模板过滤器 用于显示当前选择的主导航项的模板标签 自定义 test_email_backend,无论收件人是谁,都会将电子邮件发送到您自己的地址 测试可调用或不可调用视图的函数 虚拟视图可测试您的404和500...

    project_template_3:版本3 *的Django项目模板*

    Django自定义项目模板 快速开始 该模板适用于Django版本3. * 创建虚拟环境时,请安装django 用于此模板的软件包: 詹戈 djangorestframework Django过滤器 django-uuslug django-mptt django-debug-工具栏 ...

    详解在Python的Django框架中创建模板库的方法

    不管是写自定义标签还是过滤器,第一件要做的事是创建模板库(Django能够导入的基本结构)。 创建一个模板库分两步走:  第一,决定模板库应该放在哪个Django应用下。 如果你通过 manage.py startapp 创建了一个...

Global site tag (gtag.js) - Google Analytics