flask框架关于静态文件及其模板生成

网友投稿 1139 2022-05-30

静态文件主要包括css,JavaScript等脚本文件、图片等,在加载文件的时候主要是用url_for方法。语法url_for(‘文件夹’, filename=‘调用文件路径及扩展名’)

对于网页来说,静态文件是不可避免的。即使简洁如 Google,其主页也包含有图片。静态文件通常是 css 文件、js 文件以及图片、视频、音频文件等。

静态文件

Web程序中常常需要处理静态文件,在Flask中需要使用url_for函数并指定static端点名和文件名。在下面的例子中,实际的文件应放在static/文件夹下。

url_for('static', filename='style.css')

flask框架关于静态文件及其模板生成

模板生成

Flask默认使用Jinja2作为模板,Flask会自动配置Jinja 模板,所以我们不需要其他配置了。默认情况下,模板文件需要放在templates文件夹下。

使用 Jinja 模板,只需要使用render_template函数并传入模板文件名和参数名即可。

from flask import render_template @app.route('/hello/') @app.route('/hello/') def hello(name=None): return render_template('hello.html', name=name)

相应的模板文件如下。

Hello from Flask {% if name %}

Hello {{ name }}!

{% else %}

Hello, World!

{% endif %}

日志输出

Flask 为我们预配置了一个 Logger,我们可以直接在程序中使用。这个Logger是一个标准的Python Logger,所以我们可以向标准Logger那样配置它,详情可以参考官方文档或者我的文章Python 日志输出。

app.logger.debug('A value for debugging') app.logger.warning('A warning occurred (%d apples)', 42) app.logger.error('An error occurred')

处理请求

在 Flask 中获取请求参数需要使用request等几个全局对象,但是这几个全局对象比较特殊,它们是 Context Locals ,其实就是 Web 上下文中局部变量的代理。虽然我们在程序中使用的是全局变量,但是对于每个请求作用域,它们都是互不相同的变量。理解了这一点,后面就非常简单了

Flask

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【TP5】安装Guzzle并简单使用
下一篇:Python多线程的原理与实现
相关文章