Flask设置静态资源访问路径

Flask设置静态资源访问路径

Flask设置静态资源访问路径

Flask是一个轻量级的Python Web框架,非常适合快速开发Web应用程序。在Flask应用程序中,静态资源(如图片、样式表、JavaScript文件等)通常存储在静态目录中。在默认情况下,Flask会将静态资源放在名为static的目录中,并且可以通过url_for('static', filename='filename')方法来生成静态资源的URL。

但有时候,我们可能希望将静态资源存储在不同的目录中,或者希望自定义静态资源的访问路径。本文将详细介绍如何在Flask中设置静态资源的访问路径。

设置静态资源目录

在Flask中,默认的静态资源目录是static。如果我们希望更改静态资源的存储目录,可以通过在应用程序创建时指定static_folder参数来实现。以下是一个示例代码:

from flask import Flask

app = Flask(__name__, static_folder='assets')

在上面的示例中,我们将静态资源目录更改为assets。这意味着所有的静态资源文件(如style.csslogo.png等)都应该存储在assets目录下。

设置静态资源访问路径

在默认情况下,Flask将静态资源访问路径设置为/static/<filename>。例如,静态资源style.css的访问路径将会是/static/style.css。如果我们希望自定义静态资源的访问路径,可以通过在应用程序创建时指定static_url_path参数来实现。以下是一个示例代码:

from flask import Flask

app = Flask(__name__, static_url_path='/assets', static_folder='static')

在上面的示例中,我们将静态资源的访问路径更改为/assets。这意味着,若要访问静态资源style.css,其访问路径将变为/assets/style.css

示例代码

下面是一个完整的示例代码,演示了如何在Flask应用程序中设置静态资源的存储目录和访问路径:

from flask import Flask

app = Flask(__name__, static_url_path='/assets', static_folder='assets')

@app.route('/')
def index():
    return '<link rel="stylesheet" href="/assets/style.css">'

if __name__ == '__main__':
    app.run()

在上面的示例中,我们将静态资源存储在assets目录下,并将其访问路径设置为/assets。在index路由中,我们通过<link>标签引入了一个名为style.css的样式表。

运行结果

当我们运行上述示例代码并访问http://127.0.0.1:5000/时,将会看到页面引入的样式表生效。此时,静态资源style.css的访问路径为/assets/style.css

通过本文的介绍,我们学习了如何在Flask应用程序中设置静态资源的存储目录和访问路径。这些技巧可以帮助我们更灵活地管理静态资源,使Web应用程序开发更加便捷。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程