博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何获取对象值
阅读量:6403 次
发布时间:2019-06-23

本文共 2042 字,大约阅读时间需要 6 分钟。

jinja2

参考:

1 for 循环一个对象(字典) 列表 元组如何循环

{% for k,v in d.items %}

    `k` `v`

{%endfor%}

{% for key, value in my_dict.iteritems() %}    
{
{ key|e }}
    
{
{ value|e }}
{% endfor %}

元组和列表

{% for s in L %}

    `s`

{%endfor %}

L是元组  L.0  可获取第一个值  区别python中的L[0]

2 if 语句

{% if manufacturer == 'hp' %}

    '惠普' 

{% elif manufacturer =='huawei'%}

    '华为' 

{%else%} 

    '浪潮'

{%endif%}

3 设置变量

{% set active_page = 'statistics' %}

设置一个字典呢?

html中定义一个 字典类型的变量对象

{%set business_map = {"xf_list":"新房列表页", "xf_main": "新房楼盘主页"%}

 

就可以引用了

{

{business_map["xf_list"]}}

4 格式化输出 数字 精确位数

{

{
"%0.1f"| format(dashboard_ibox.get("online-number") *100 /dashboard_ibox.get("user-number"))

5 过滤

过滤器变量可以通过 过滤器 修改。过滤器与变量用管道符号( | )分割,并且也 可以用圆括号传递可选参数。多个过滤器可以链式调用,前一个过滤器的输出会被作为 后一个过滤器的输入。

例如 {

{
 name|striptags|title }} 会移除 name 中的所有 HTML 标签并且改写 为标题样式的大小写格式。过滤器接受带圆括号的参数,如同函数调用。这个例子会 把一个列表用逗号连接起来: {
{
 list|join(', ') }} 。

5.1 内置

{

{(med_threshold[0]*1000)|int}}-{
{(med_threshold[1]*1000)|int}}

自定义过滤器结合flask中

参考:

我喜欢用这种方法:

....

from lib import filters

.....

def configure_template_filters(app):

    for name in dir(filters):

        if callable(getattr(filters, name)):

            app.add_template_filter(getattr(filters, name))

6 去掉空格符

此外,你也可以手动剥离模板中的空白。当你在块(比如一个 for 标签、一段注释或变 量表达式)的开始或结束放置一个减号( - ),可以移除块前或块后的空白:

{% for item in seq -%}    {
{ item }}{%- endfor %}

提示

标签和减号之间不能有空白。

有效的:

{%- if foo -%}...{% endif %}

无效的:

{% - if foo - %}...{% endif %}

7 set赋值和计算

参考:http://stackoverflow.com/questions/3482297/how-can-i-make-a-simple-counter-with-jinja2-templates

items = [    ['foo', 'bar'],    ['bax', 'quux', 'ketchup', 'mustard'],    ['bacon', 'eggs'],    ]print Template("""{% set counter = 0 -%}{% for group in items -%}  {% for item in group -%}    item={
{ item }}, count={
{ counter + loop.index0 }}  {% endfor -%}  {% set counter = counter + group|length %}{% endfor -%}""").render(items=items)

我常用: 如果表格分隔不同的颜色

{%- set num=1 -%}

        {% for item in data%}

            {%- set num=num+1 -%}

.........

....

本文转自残剑博客51CTO博客,原文链接http://blog.51cto.com/cuidehua/1764825如需转载请自行联系原作者

cuizhiliang

你可能感兴趣的文章
一起来将vscode变成私人定制笔记本
查看>>
Flutter 云音乐
查看>>
RecyclerView实现多type页面
查看>>
个人的web商城网站
查看>>
debian fcitx
查看>>
排中律与实无穷问题的性质分析
查看>>
08/23 学习总结
查看>>
关于Ubuntu下安装phpmyadmin后mysqli丢失的解决
查看>>
物理层
查看>>
linux多网卡路由设置
查看>>
win7环境下的栈溢出与实战
查看>>
查看ios字体库方法
查看>>
八大监听器
查看>>
self.navigationController退出到指定页面,或者一次性pop出n个页面
查看>>
Quartz实现数据库动态配置定时任务
查看>>
iptables 端口转发以及双向通信
查看>>
备战一线互联网公司Java工程师面试题 (1)
查看>>
ThinkPHP中自动验证失败
查看>>
jquery图片切换插件jquery.cycle.js参数详解
查看>>
JavaScript push() 方法
查看>>