Flask 模板

Posted icetouch

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask 模板相关的知识,希望对你有一定的参考价值。

使用模板有助于将业务逻辑与表现逻辑分开,更易于维护。模板是已经建立的网页代码,其中部分动态数据需要在请求的上下文中用具体值替换。

flask中使用了Jinja2模板引擎,储存在templates文件夹中。

templates/index.html
<
h1>Hello World!</h1>

使用 {{ name }} 占位

templates/user.html
<h1>Hello, {{ name }}!</h1>

 

模板的渲染

模板的渲染即用真实值取代模板中的占位变量的过程。

from flask import Flask,render_template
@app.route(/)
def index():
    return render_template(index.html,name=name)

变量可以从列表、字典和对象获取。

<p>A value from a dict:{{ mydict[‘key‘] }}</p>
<p>A value from a list:{{ mylist[3] }}</p>
<p>A value from a list with a variable index:{{ mylist[intvar] }}</p>
<p>A value from a object‘s method :{{ myobj.mymethod() }}</p>

使用过滤器修改变量:

{{ name|capitalize }}

常用过滤器:

过滤器名 说明
safe 渲染时不转义
capitalize 首字母大写,其他小写
lower 小写
upper 大写
title 每个单词首字母大写
trim 去掉首尾空格
striptags 把值中所有html标签删掉

 

 

 

 

 

 

 

 

控制结构

 

{% if user %}
    Hello,{{ user }}
{% else %}
    Hello,Stranger!
{% endif %}

 

<ul>
    {% for comment in comments %}
        <li>{{ comment }}</li>
    {% endfor %}
</ul>

 

以上是关于Flask 模板的主要内容,如果未能解决你的问题,请参考以下文章

12_关于flask中的宏

flask中jinjia2模板引擎使用详解5

Flask教程11模板

VSCode自定义代码片段——.vue文件的模板

使用 Vue + Flask 搭建单页应用

VSCode自定义代码片段1——vue主模板