falsk 与 django 过滤器的使用与区别
1,flask中内置的过滤器模板中常用方法:
{#过滤器调用方式{{变量|过滤器名称}} #}
<!-- safe过滤器,可以禁用转义 -->
{{'<strong>hello</strong>'|safe}}
<br/>
大写转小写
{{'HELLO'|lower}}
小写转大写
{{'hello'|upper}}
<br/>
字符串反转
{{'abc'|reverse}}
首字母大写
{{'james'|capitalize}}
过滤HTML标签
{{'<em>apple</em>'| striptags}}
<br/>
只显示list首个元素
{{[100,95,55,81]|first}}
只显示list最后一个元素
{{[100,95,55,81]|last}}
显示list的长度
{{[100,95,55,81]|length}}
list里所有元素求和
{{[100,95,55,81]|sum}}
list进行排序
{{[100,95,55,81]|sort}}
format:格式化输出
{{ '%s is %d' | format('name',17) }}
<br/>
对语句块进行过滤
{% filter upper%}
qwedr,tyuio,piuytre,rtyuiuyt
afaife oifafa, afaf
{%endfilter%} <br/>
链式调用过滤器
{{'abc'|reverse|upper}}
<br><br>
自定义过滤器
{{100|my_filter}}
自定义过滤器(后端视图函数)
@app.template_filter("my_filter")
#自定义过滤器
def my_filter(val):
return '$' + str(val)
2,django中内置的过滤器模板中常用方法:
{#通过内置过滤器实现加减法#}
{{test_int | add:10}}
{{list.0}}
<br>
{%for i in list%}
{{i}}
{#打印索引 从1开始的计数器#}
{{forloop.counter}}
{#打印数组索性#}
{{forloop.counter0}}
{#倒序索引#}
{{forloop.revcounter}}
<br>
{%endfor%}
<br>
{% for i in dict%}
{#取首位和末尾 first last#}
姓名:{{i.name |first}} 年龄:{{i.age}}
{%endfor%}
<br>
{#大写小写#}
{{'jack' | upper | lower}}
{#返回长度#}
{{''| length}}
{#截断操作#}
{{content | truncatechars:10}}
截断单词{{content | truncatewords:2}}
{# 格式化日期#}
{{dt | date:'Y-m-d H:i:s'}}
自定义过滤器(后端视图函数)
首先在工程文件的同名配置文件下创建templatetags文件夹,建立myfiler.py用来自定义过滤器
例:
from django import template
#注册过滤器对象
register = template.Library()
#自定义过滤器
#通过装饰器的方式来注册自定义过滤器
@register.filter
def my_str(val):
return "$" +str(val)
#定义一个双参数过滤器
@register.filter
def my_str_two(val,p1):
return val + p1 #定义一个多参数的过滤器
#注册过滤器的时候,需要注册SIMPLE_TAG
@register.simple_tag
def my_str_many(val,p1,p2):
return val + p1 + p2
#定义一个取余数的过滤器
@register.filter
def get_line(val):
return int(val) % 2
在templates文件夹中模板文件中导入
{{test_str | my_str}}
{# 两个参数进行调用#}
{{'你好' | my_str_two:"不好"}}
{#调用多参数的过滤器#}
{% my_str_many '你好' '不好' '啊' %}
{{test_list | length}}
falsk 与 django 过滤器的使用与区别的更多相关文章
- Django过滤器列表
Django 模板过滤器也是我们在以后基于 Django 网站开发过程中会经常遇到的,如显示格式的转换.判断处理等.以下是 Django 过滤器列表,希望对为大家的开发带来一些方便. 一.形式:小写 ...
- Django day05 虚拟环境 django 2.0和django 1.0 路由层区别
一:虚拟环境 创建虚拟环境一般有三种方式: 1) File--->New Project--> 出现如下图,点击Project Interpreter:New Virtualenv e ...
- django -过滤器的使用
前情提要: 最近工作中用到django 中的 自定制过滤器的内容, 再此 复习一波过滤器和自定制 过滤器的内容 自定制过滤器 1.在settings中的INSTALLED_APPS配置当前app ...
- falsk 与 django cookie和session存、取、删的区别
falsk cookie的存取删需导入from flask import Flask,make_response,request# 存COOKIE的方法@app.route('/setcookie') ...
- django 过滤器、日日期格式化参数
转载:http://blog.csdn.net/xyp84/article/details/7945094 django1.4 html页面从数据库中读出DateTimeField字段时,显示的时间格 ...
- django 过滤器 、日期格式化参数
http://blog.csdn.net/xyp84/article/details/7945094 django1.4 html页面从数据库中读出DateTimeField字段时,显示的时间格式和数 ...
- 【转载】django 过滤器 、日期格式化参数
过滤器相关: 一.形式:小写{{ name | lower }} 二.串联:先转义文本到HTML,再转换每行到 标签{{ my_text|escape|linebreaks }} 三.过滤器的参数显示 ...
- django 过滤器,标签
过滤器: <p>{{ date|date:"Y-m-d" }}</p> {#2018-05-28,date是当前时间#} <p>{{ l|len ...
- django过滤器,日期格式化
过滤器相关: 一.形式:小写{{ name | lower }} 二.串联:先转义文本到HTML,再转换每行到 标签{{ my_text|escape|linebreaks }} 三.过滤器的参数显示 ...
随机推荐
- 【WPF】点击滑动条(Slider),移动滑块(Tick)到鼠标点击的位置
问题:点击Slider控件时,滑块会自动跳到滑动条的最边缘位置,无法跳到鼠标点击的位置上. 办法:给Slider控件设置属性IsMoveToPointEnabled="True"即 ...
- greendao引起的NoClassDefFoundError异常解决
在使用Android studio导入eclipse工程师报错,因为原工程引用了greendao的第三方工程包 java.lang.NoClassDefFoundError: org.greenrob ...
- svn-checkout后,循环遍历查找包含某字符串的文件
这里涉及几个知识点: 1.安装subversion,不多说了,网上有教程 2.循环遍历所有目录层级,找相 关文件 #!/bin/bash #########svn checkout项目出来 svn_d ...
- Linux时间变慢解决方法
情景:系统为CentOS-5.4,硬件时间正确(查看硬件时间的方法见下面),系统时间每隔24小时会慢20分钟左右Linux将时钟分为系统时钟(System Clock)和硬件(Real Time Cl ...
- [React] 05 - Route: connect with ExpressJS
基础: 初步理解:Node.js Express 框架 参见:[Node.js] 08 - Web Server and REST API 进阶: Ref: 如何系统地学习 Express?[该网页有 ...
- .net core 开发接口前端调用时提示错误 405
解决方法: 在StartUp.cs文件中Configure(IApplicationBuilder app, IHostingEnvironment env)方法中添加如下代码: //跨域 app.U ...
- WPF自定义路由事件(一)
首先自定义事件支持事件路由,需要使用 RegisterRoutedEvent 方法注册 RoutedEvent C#语法 public static RoutedEvent RegisterRoute ...
- linux dd指令
ghost和g4l 安装操作系统,速度太慢,整个过程太冗长乏味了. 安装过程中,需要回答若干问题,系统需要安装无数个软件,创建和写入无数的文件.因为涉及到大量的文件定位和读写,速度一定是快不起来的. ...
- Python实现C代码统计工具(一)
目录 Python实现C代码统计工具(一) 声明 一. 问题提出 二. 代码实现 三. 效果验证 四. 后记 Python实现C代码统计工具(一) 标签: Python 代码统计 声明 本文将基于Py ...
- linux Email 体系
大致了解了DNS与邮件服务器之间的关系后,接下来我们介绍邮件到底是如何传送到目的邮件主机的.下面我们分成“寄信”与“收信”两个主要的邮件服务器使用方式进行介绍.先说明关于“寄信”的部分.通常我们都是使 ...