湛江建设免费网站,网络软文怎么写,做购物网站适合的服务器,上海到北京的火车Python Flask 渲染静态程动态页面 Python Flask 渲染静态程动态页面 Python Flask 渲染静态程动态页面
对网页应用程序来说#xff0c;静态内容是重要的#xff0c;因为它们包括 CSS 和 JavaScript 文件。静态文件可以直接由网页服务器提供。如果我们在我们的项目中创建一个… Python Flask 渲染静态程动态页面 Python Flask 渲染静态程动态页面 Python Flask 渲染静态程动态页面
对网页应用程序来说静态内容是重要的因为它们包括 CSS 和 JavaScript 文件。静态文件可以直接由网页服务器提供。如果我们在我们的项目中创建一个名字是 static 目录并且重定向客户端到静态文件位置Flask 可以支持静态内容。
动态内容可以使用 Python 创建但它很乏味需要在Python中维护这样的代码。
推荐的方法是使用 Jinja2 等模板引擎。Flask 附带了 Jinja2 库因此不需要安装额外的库也不需要添加任何额外的配置来设置 Jinja2。下面显示了一个具有两个函数的示例代码一个处理静态内容的请求另一个处理动态内容的请求
# 渲染静态和动态页面from flask import Flask, render_template, url_for, redirectapp Flask(__name__)app.route(/hello)
def hello():hello_url url_for(static, filenameapp3_static.html)return redirect(hello_url)app.route(/greeting)
def greeting():msg 这是来自宇宙深处的消息。return render_template(app3_dynamic.html, greetingmsg)if __name__ __main__:app.run()为了更好地理解这个示例代码我们将强调一下关键点
我们从Flask导入了其他模块如 url_for、redirect 和 render_template对于/hello 路由我们使用 url_for 函数构建一个 URL其中静态目录和 HTML 文件名作为参数。我们向浏览器发送响应这是一条指令将客户端重定向到静态文件位置的 URL。重定向指令通过使用 300-399 范围内的状态码指示给网页浏览器当我们使用重定向功能时Flask会自动设置该状态码。对于 /gtreating 路由我们使用 render_template 函数渲染一个 Jinja 模板 app3_dynamics.htm。我们还将问候消息字符串作为值传递给模板的变量。问候语变量将可用于 Jinja 模板如 app3_dynamics.html 文件中的以下模板摘录所示
!DOCTYPE html
body
{% if greeting %}
h1 {{greeting}}!/h1
{% endif %}
/body
/html这是最简单的 Jinja 模板其中 if 语句用 %% 括起来Python变量使用两个花括号{{}}格式包含在内。我们不会详细介绍 Jinja2 模板但我们强烈建议您通过他们的在线平台熟悉Jinja2的模板 https://jinja.palletsprojects.com/.
可以使用 curl 工具和网页浏览器访问这个网页应用程序。
完