【Flask】FlaskWeb开发上手点滴(02)-模板

简介: 【Flask】FlaskWeb开发上手点滴(02)-模板

模板是一个包含响应的文本的文件,期中包含用占位变量表示的动态部分,其具体值只在请求的上下文中才能知道。使用真实替换变量,再返回最终得到的响应字符串,这一过程称为“渲染”。

在Falsk中使用Jinja2这个模板引擎。

2.1 jinja2模板引擎

2.1.1渲染模板

默认情况下,Falsk在程序/项目的文件夹中的templates子文件夹中寻找模板。我们可以将定义好的模板保存在这个文件夹中。

现在我们改造下“01讲中的首例”:

from flask import Flask,render_template
from flask import request
app = Flask(__name__)
@app.route('/')
def index():
    user_agent=request.headers.get('User-Agent')
return render_template('index.html',user_agent=user_agent)
@app.route('/user/<name>')
def hello_world(name):
return render_template('user.html',name=name)
if __name__ == '__main__':
app.run(debug=True)

然后分别在templates文件夹下新建两个文件index.html和user.html,

内容分别如下:

#index.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <p>欢迎您!您的浏览器是:{{user_agent}}</p>
</body>
</html>
#user.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h1 style="color: coral">Hello {{name}}</h1>
</body>
</html>

从这里我们可以看到:Falsk提供render_template函数把jinja2模板引擎集成到了程序中。

render_template函数的第一个参数是模板的文件名。随后的参数都是键值对,表示末班中变量对应的真实值。

2.1.2jinja2变量过滤器

注意:很多情况下需要显示变量中存储的HTML代码,这时就需要使用safe过滤器。但是,千万不要在不可信的值上使用safe过滤器,例如用户在表单中输入的文本。



相关文章
|
2月前
|
数据库 Python
如何使用Flask进行开发?
【9月更文挑战第1天】如何使用Flask进行开发?
51 3
|
1月前
|
Python
Flask 模板标签语言的使用
Flask 模板标签语言的使用
23 4
|
1月前
|
自然语言处理 Python
六、Flask模板使用方法
六、Flask模板使用方法
13 0
|
3月前
|
SQL 缓存 数据库
神秘编程领域惊现宝藏!Flask 扩展生态究竟隐藏着怎样的神奇力量?快来揭开提升开发效率的秘密!
【8月更文挑战第31天】在 Flask 的世界里,其简洁而强大的核心框架搭配丰富多彩的扩展生态,为开发者带来了无尽可能性。从数据库集成到用户认证,从表单验证到缓存管理,Flask 提供了众多高质量插件,如 Flask-SQLAlchemy、Flask-WTF 和 Flask-Login,大幅提升了开发效率和代码质量。这些扩展如同宝库中的珍宝,等待着我们去探索和利用,但需谨慎选择以避免不必要的复杂性和性能问题。总之,Flask 的扩展生态助力我们更高效地开发 Web 应用,创造更多优秀作品。
34 0
|
3月前
|
前端开发 Python
使用 Flask 3 搭建问答平台(三):注册页面模板渲染
使用 Flask 3 搭建问答平台(三):注册页面模板渲染
|
4月前
|
JSON 数据格式 Python
Flask实现内部接口----pycharm安装及新建,location代表着文件路径,下面是Python的环境,Flask是由Python开发的框架,Python文件接口ython通过GET发送
Flask实现内部接口----pycharm安装及新建,location代表着文件路径,下面是Python的环境,Flask是由Python开发的框架,Python文件接口ython通过GET发送
|
4月前
|
API 数据库 开发者
逆袭之路!Django/Flask助你成为Web开发界的璀璨新星!
【7月更文挑战第13天】在Python Web开发中,Django和Flask各具优势。Django适合快速构建大型项目,如在线书店,其ORM和内置功能让复杂应用轻松上手。Flask则以其轻量和灵活性见长,适用于个人博客等小型应用。选择框架应根据项目需求和个人偏好,两者都能助开发者在Web开发领域大放异彩。
50 2
|
4月前
|
数据库 开发者 Python
从菜鸟到大神,Django/Flask 让你秒变 Web 开发界的‘头号玩家’!
【7月更文挑战第12天】在Python Web开发中,Django和Flask框架各具特色。Flask轻量灵活,适合快速搭建简单应用,如博客,基本代码仅需几行。Django则功能全面,适用于复杂项目,如电商网站,内置ORM和管理后台。两者都助力开发者从新手进阶。选择取决于项目需求和个人偏好。学习和实践这两个框架,能助你成为Web开发专家。
57 2
|
4月前
|
JSON 文字识别 数据格式
文本,文字识别,Flask实现内部接口开发,OCR外部接口的开发,如何开发一个识别接口,通过post调用,参数是图片的路径,内部调用,直接传图片路径就行
文本,文字识别,Flask实现内部接口开发,OCR外部接口的开发,如何开发一个识别接口,通过post调用,参数是图片的路径,内部调用,直接传图片路径就行
|
4月前
|
API Python
python flask 提供web的get/post开发
python flask 提供web的get/post开发
45 0
下一篇
无影云桌面