python-Flask(jinja2)语法:过滤器

default过滤器

[TOC]

default过滤器

{{ avatar|default('xxx') }}
<body>
    <p>过滤器模板文件</p>
    <img src="{{ avatar | default('http://noavatar.csdn.net/B/3/F/3_lighting_miaoxingren.jpg') }}">
</body>
@app.route('/')
def index():
    return render_template('index.html') # 后端不上传图片,前端将加载默认的图片

length过滤器

获取列表、字符串、字典、元组等长度。例如用来显示文字评论的总数

 <body>
    <p>评论数:({{ comments|length }})</p>
    <ul>
        {% for comment in comments %}
            <li>
                <a href="#">{{ comment.user }}</a>
                <p href="#">{{ comment.content }}</p>
            </li>
        {% endfor %}
    </ul>
</body>

@app.route('/')
def index():
    # 定义一个评论列表
    comments = [
        {
            'user' : '站长',
            'content' : '我觉得可以'
        },
        {
            'user' : '你猜',
            'content' : '我觉得不行'
        },
        {
            'user' : '杰克',
            'content' : '你有Freestyle吗?'
        }
    ]
    return render_template('index.html',comments=comments)

常用的过滤器

  • abs(value):返回一个数值的绝对值。示例:-1|abs

  • default(value,default_value,boolean=false):如果当前变量没有值,则会使用参数中的值来代替。示例:name|default(‘xiaotuo’)——如果name不存在,则会使用xiaotuo来替代。boolean=False默认是在只有这个变量为undefined的时候才会使用default中的值,如果想使用python的形式判断是否为false,则可以传递boolean=true。也可以使用or来替换。

  • escape(value)或e:转义字符,会将<、>等符号转义成HTML中的符号。显例:content|escapecontent|e

  • first(value):返回一个序列的第一个元素。示例:names|first

  • format(value,arags,*kwargs):格式化字符串。比如:{{ "%s" - "%s"|format('Hello?',"Foo!") }}将输出:Helloo? - Foo!

  • last(value):返回一个序列的最后一个元素。示例:names|last。

  • length(value):返回一个序列或者字典的长度。示例:names|length。

  • join(value,d=u”):将一个序列用d这个参数的值拼接成字符串。

  • safe(value):如果开启了全局转义,那么safe过滤器会将变量关掉转义。示例:content_html|safe。

  • int(value):将值转换为int类型。

  • float(value):将值转换为float类型。

  • lower(value):将字符串转换为小写。

  • upper(value):将字符串转换为小写。

  • replace(value,old,new): 替换将old替换为new的字符串。

  • truncate(value,length=255,killwords=False):截取length长度的字符串。

  • striptags(value):删除字符串中所有的HTML标签,如果出现多个空格,将替换成一个空格。

  • trim:截取字符串前面和后面的空白字符。

  • string(value):将变量转换成字符串。

  • wordcount(s):计算一个长字符串中单词的个数。

default过滤器

[TOC]

default过滤器

{{ avatar|default('xxx') }}
<body>
    <p>过滤器模板文件</p>
    <img src="{{ avatar | default('http://noavatar.csdn.net/B/3/F/3_lighting_miaoxingren.jpg') }}">
</body>
@app.route('/')
def index():
    return render_template('index.html') # 后端不上传图片,前端将加载默认的图片

length过滤器

获取列表、字符串、字典、元组等长度。例如用来显示文字评论的总数

 <body>
    <p>评论数:({{ comments|length }})</p>
    <ul>
        {% for comment in comments %}
            <li>
                <a href="#">{{ comment.user }}</a>
                <p href="#">{{ comment.content }}</p>
            </li>
        {% endfor %}
    </ul>
</body>

@app.route('/')
def index():
    # 定义一个评论列表
    comments = [
        {
            'user' : '站长',
            'content' : '我觉得可以'
        },
        {
            'user' : '你猜',
            'content' : '我觉得不行'
        },
        {
            'user' : '杰克',
            'content' : '你有Freestyle吗?'
        }
    ]
    return render_template('index.html',comments=comments)

常用的过滤器

  • abs(value):返回一个数值的绝对值。示例:-1|abs

  • default(value,default_value,boolean=false):如果当前变量没有值,则会使用参数中的值来代替。示例:name|default(‘xiaotuo’)——如果name不存在,则会使用xiaotuo来替代。boolean=False默认是在只有这个变量为undefined的时候才会使用default中的值,如果想使用python的形式判断是否为false,则可以传递boolean=true。也可以使用or来替换。

  • escape(value)或e:转义字符,会将<、>等符号转义成HTML中的符号。显例:content|escapecontent|e

  • first(value):返回一个序列的第一个元素。示例:names|first

  • format(value,arags,*kwargs):格式化字符串。比如:{{ "%s" - "%s"|format('Hello?',"Foo!") }}将输出:Helloo? - Foo!

  • last(value):返回一个序列的最后一个元素。示例:names|last。

  • length(value):返回一个序列或者字典的长度。示例:names|length。

  • join(value,d=u”):将一个序列用d这个参数的值拼接成字符串。

  • safe(value):如果开启了全局转义,那么safe过滤器会将变量关掉转义。示例:content_html|safe。

  • int(value):将值转换为int类型。

  • float(value):将值转换为float类型。

  • lower(value):将字符串转换为小写。

  • upper(value):将字符串转换为小写。

  • replace(value,old,new): 替换将old替换为new的字符串。

  • truncate(value,length=255,killwords=False):截取length长度的字符串。

  • striptags(value):删除字符串中所有的HTML标签,如果出现多个空格,将替换成一个空格。

  • trim:截取字符串前面和后面的空白字符。

  • string(value):将变量转换成字符串。

  • wordcount(s):计算一个长字符串中单词的个数。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,107评论 19 139
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 10,005评论 0 5
  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 9,721评论 0 13
  • 模板: 在之前的章节中,视图函数只是直接返回文本,而在实际生产环境中其实很少这样用,因为实际的页面大多是带有样式和...
    帅气的Lucky阅读 5,841评论 0 1
  • 毕业一年了,心态也磨炼得沉稳,工作感情都不在大起大落。其实自从追了《太阳的后裔》之后,就没有什么想看的电视剧了。我...
    叶一片阅读 3,978评论 4 6

友情链接更多精彩内容