1、在站点blog目录下创建templatetags文件夹

2、templatetags目录下需要作为一个包来处理和调用其中的内容,需要有一个__init__.py文件

3、在templatetags目录下创建percent.py文件(里面定义过滤器)

4、编写percent.py文件,定义过滤器

# -*- coding: UTF-8 -*-
#自定义过滤器,注意这里编码一定不要掉了,不然会报错啊~~~~
from django import template
register = template.Library() def percent(value):
return value + "%" register.filter(percent)

5、index

<h1>3、过滤器-自定义过滤器</h1>

{% load percent%} <li>{{test.today | date:"Y-m-d" | percent }} </li>

<!DOCTYPE html>
<body lang="en">
<head>
<meta charset="UTF-8">
<title>django之创建第6-1个项目-自定义过滤器</title>
</head>
<br>
<h2>name:{{test.name}}</h2> <!--模板 变量用变量定义-->
<h2>age:{{test.age}}</h2>
<h2>访问类方法:{{test.myMethod}}</h2>
<h1>条件语句</h1> <h1>1、条件语句-if条件语句</h1> {% if test.age > 20 %}
<li>我要努力了</li>
{% else %}
<li>你还可以玩玩?不可以</li>
{% endif %} <lo>2、and、or、not</lo> {% if not user1 %}
<li>user1是不存在的</li>
{% else %}
<li>uer1存在</li>
{% endif %} {% if not test.name %}
<li>test.name 为空(含义:如果user.name的值不存在,则定义他为空)</li>
{% endif %} <h1>2、条件语句-for条件语句</h1>
<li>第1种方法:test.values</li>
{% for value in test.values %}<!--取字典的值-->
<lo>{{value}}</lo>
{% endfor %}
</br>
</br>
<li>第2种方法:test.keys</li>
{% for key in test.keys %}<!--取字典的键-->
<lo>{{key}}</lo>
{% endfor %}
</br>
</br>
<li>第3种方法:test.items</li>
{% for key,value in test.items %}<!--取字典的键值对-->
<lo>{{key}}:{{value}},</lo>
{% endfor %}
</br>
</br>
<lo>针对list数据时一样的道理,直接遍历list数据即可,和python很像</lo> <h1>2.1、条件语句-for条件语句反向迭代(reversed)</h1>
</br>
{% for key in test.keys reversed %}<!--反向迭代-->
<lo>{{key}}</lo>
{% endfor %}
</br>
</br> <h1>3、过滤器-转化为大写</h1>
<li>第1种方法:key.upper</li>
{% for key,value in test.items %}
<lo>{{key.upper}}:{{value}}</lo><br><!--br换行-->
{% endfor %}
</br>
<li>第2种方法:key | upper</li> {% for key,value in test.items %}
<lo>{{key | upper}}:{{value}}</lo><br><!--竖杠为管道符号-->
{% endfor %} </br>
<li>第3种方法:多重管道</li> {% for key,value in test.items %}
<lo>{{key | upper |lower | capfirst }}:{{value}}</lo><br><!--竖杠为管道符号-->
{% endfor %} </br>
<h1>3、过滤器-时间过滤或者格式化</h1>
<li>3.1、当前时间:{{test.today}}</li>
<li>3.2、格式化当前时间:{{test.today | date:"Y-m-d H:i:s"}}</li>
</br>
<lo>格式化时时间分别用什么字母表示?</lo><br>
<lo>Y:年</lo><br>
<lo>m:月</lo><br>
<lo>d:日</lo><br>
<lo>H:小时</lo><br>
<lo>i:分钟</lo><br>
<lo>s:秒</lo><br> <h1>3、过滤器-自定义过滤器</h1>
{% load percent%}
<li>{{test.today | date:"Y-m-d" | percent }} </li>
</body>
</html>

6、结果;

2016-04-05%

加上了一个%符号

7、百度云盘:http://pan.baidu.com/s/1kVng8lx

django之创建第6-1个项目-自定义过滤器的更多相关文章

  1. django之创建第12个项目-加载图片

    百度云盘:django之创建第12个项目-加载图片 1.setting配置 #静态文件相关配置 # URL prefix for static files. # Example: "http ...

  2. django之创建第11个项目-页面整合

    目的:将如下众多html页面整合到一个index.html页面中. 百度云盘:django之创建第11个项目-页面整合 用下面的方式实现: <!DOCTYPE html> <head ...

  3. django之创建第10-1个项目-图片上传并记录上传时间

    1.百度云盘:django之创建第10-1个项目-图片上传并记录上传时间 2.主要修改的配置文件有3个,forms.views和models3个文件以及html 3.forms.py文件修改 #cod ...

  4. django之创建第10个项目-图片上传方式1

    1.upload.HTMl <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang=& ...

  5. django之创建第9个项目-管理后台admin

    django之创建第9个项目-管理后台admin配置 1.配置setting文件INSTALLED_APPS = (    'django.contrib.auth',    'django.cont ...

  6. django之创建第8-3个项目-数据库数据提取之高级操作

    1.配置test2.html <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...

  7. django之创建第8-1个项目-数据库之增删改查/数据库数据显示在html页面

    1.为test.DB数据库预先创建下面数据 1    张三    16    2015-01-02    12    李四    17    2015-01-04    13    王五    14  ...

  8. django之创建第8个项目-数据库配置及同步研究

    1.sqlitestudio-2.1.5数据库可视化工具--百度云盘下载 2.编写C:\djangoweb\helloworld\blog\models.py文件 # Create your mode ...

  9. django之创建第7-4个项目-配置views文件实现url传值

    即:怎么实现url?name=xiaodeng&age=28等类似传值处理 1.配置views文件 # Create your views here. #coding:utf-8 from d ...

随机推荐

  1. 微信Access Token 缓存方法

    微信Access Token默认缓存是2小时,但是需要特别强调,微信服务号和微信企业号缓存并不相同. (1)微信公众号号:每次Http请求Access Token 系统会返回不同的Token,并附带超 ...

  2. perf使用示例2

    perf使用示例2 性能调优工具如 perf,Oprofile 等的基本原理都是对被监测对象进行采样,最简单的情形是根据 tick 中断进行采样,即在 tick 中断内触发采样点,在采样点里判断程序当 ...

  3. 解决MTP device安装失败,手机无法被读取

    操作步骤: 1.  我的电脑—>管理—>设备管理器—>便携设备(MTP)-->右击-更新驱动 2.  选择浏览计算机以查找驱动程序软件—>从计算机列表选择—>MTP ...

  4. 非常好的课程,尤其是有NLP方向的内容,好好学习

    课程地址如下: https://mooc.study.163.com/smartSpec/detail/1001319001.htm 有一个非常好的笔记: https://github.com/fen ...

  5. [leetcode]Median of Two Sorted Arrays @ Python

    原题地址:https://oj.leetcode.com/problems/median-of-two-sorted-arrays/ 题意:There are two sorted arrays A ...

  6. Tag Archives: 海明距离

    在前一篇文章 <海量数据相似度计算之simhash和海明距离> 介绍了simhash的原理,大家应该感觉到了算法的魅力.但是随着业务的增长 simhash的数据也会暴增,如果一天100w, ...

  7. 转:[大数据竞赛]协同过滤在这个问题上是否work

    http://bbs.aliyun.com/read/154433.html?spm=5176.7189909.0.0.gzyohy&fpage=2 看到主办方之前发的一篇文章里提到,这个购买 ...

  8. JPA(四):EntityManager

    Persistence Persistence类使用于获取EntityManagerFactory实例,该类包含一个名为createEntityManagerFactory的静态方法. // 创建En ...

  9. Java归去来第4集:java实战之Eclipse中创建Maven类型的SSM项目

    一.前言 如果还不了解剧情,请返回第3集的剧情          Java归去来第3集:Eclipse中给动态模块升级 二.在Eclipse中创建Maven类型的SSM项目 2.1:SSM简介 SSM ...

  10. javascript高级语法学习

    可维护的代码意味着: 可读的 一致的 可预测的 看上去就像是同一个人写的 已记录 命名函数表达式 (function fn(){}) 他是表达式的原因是因为括号 ()是一个分组操作符,它的内部只能包含 ...