flask中jinjia2模板使用详解2
2018-03-04 21:24
330 查看
接上文
注释的使用
在jinjia2模板中,使用{# #}进行代码注释,如下所示
运行后发现,注释不会被render出来
去掉空行
两种方法可以去掉jinjia2模板中的空白行,一是设置jinjia2的环境变量,如下app.jinja_env.trim_blocks= True
app.jinja_env.lstrip_blocks = True另一种是通过在模板的逻辑块中添加-号
注:-是标签的一部分,所以中间不要有空格
下面这种表达是不合法的:
{% - if xxx %}
转义
想要在模板中输出原生jinjia2语法,需要进行转义,转义有两种方法
一种是通过变量表达式直接输出语言关键字,比如{{ "{{ 通过转义输出变量表达式 }}" }}
{{ "{% 通过转义输出逻辑表达式 %}" }}转出效果:
另一种是通过raw关键字进行大块转义
行语句行语句就是把一行当成是jinjia2的语句行,设置一下jinjia2的line_statement_prefix变量即可实现。比如设置为“#”
行注释
通过设置line_comment_prefix可以实现行注释,步骤跟行语句一样,比如,我们设置:
关注“挨踢学霸”微信公众号,回复“jinjia2-2“ 获取本文源代码
注释的使用
在jinjia2模板中,使用{# #}进行代码注释,如下所示
运行后发现,注释不会被render出来
去掉空行
两种方法可以去掉jinjia2模板中的空白行,一是设置jinjia2的环境变量,如下app.jinja_env.trim_blocks= True
app.jinja_env.lstrip_blocks = True另一种是通过在模板的逻辑块中添加-号
{% if name -%} <h1>Hello {{ name | upper }}!</h1> <h1>name is number? {% if name is number %}true{% else %}false{% endif %}</h1> {# 这是一大堆注释 #} {%- else -%} <h1>Hello World!</h1> {% endif %}-在前面说明要除去前面的空行,在后面除去后面的空行,两边都加前后都去掉空白行。
注:-是标签的一部分,所以中间不要有空格
下面这种表达是不合法的:
{% - if xxx %}
转义
想要在模板中输出原生jinjia2语法,需要进行转义,转义有两种方法
一种是通过变量表达式直接输出语言关键字,比如{{ "{{ 通过转义输出变量表达式 }}" }}
{{ "{% 通过转义输出逻辑表达式 %}" }}转出效果:
另一种是通过raw关键字进行大块转义
{% raw %} <ul> {% for item in seq %} <li>{{ item }}</li> {% endfor %} </ul> {% endraw %}运行效果:
行语句行语句就是把一行当成是jinjia2的语句行,设置一下jinjia2的line_statement_prefix变量即可实现。比如设置为“#”
app.jinja_env.line_statement_prefix="#"同时在模板中加入行语句
# if True <p>行语句输出</p> # endif运行效果:
行注释
通过设置line_comment_prefix可以实现行注释,步骤跟行语句一样,比如,我们设置:
app.jinja_env.line_comment_prefix = "$"在模板中加入注释
$行注释,不输出
运行后,查看源码,发现注释没有被输出
关注“挨踢学霸”微信公众号,回复“jinjia2-2“ 获取本文源代码
相关文章推荐
- flask中jinjia2模板引擎使用详解4
- flask中jinjia2模板引擎使用详解5
- flask中jinjia2模板引擎详解3
- flask中的jinjia2模板引擎详解1
- flask中jinjia2模板引擎详解1
- 边做边学Python Flask Web开发(4)-- 使用Jinjia2模板(上)
- 模板引擎使用详解:包含公共模板
- 用python flask搭建一个网站[二]——使用bootstrap模板
- 初识flask——模板的使用(2015.5.22)
- C++中模板使用详解
- C++类模板使用详解
- Python的Flask框架标配模板引擎Jinja2的使用教程
- flask使用渲染模板
- 用flask开发个人博客(11)—— 模板中代码的重复使用
- Python FLask Web 学习笔记:jinjia2的使用方法1
- 学习小记 - Flask Web (3) 不使用bootstrap模板完成表单处理
- php之Smarty模板使用方法示例详解
- Jquery 模板数据绑定插件的使用方法详解
- python jinjia2模板使用
- C++中模板使用详解