Flask()
构造函数是用来创建 Flask 应用实例的,括号里可以传入多个参数来配置 Flask 应用的行为。以下是常用的参数及其说明:
1. _ _name_ _
(必填)
- 类型:字符串
- 描述:这个参数通常传入
_ _name_ _
,表示当前 Python 模块的名称。Flask 需要用它来确定应用的根路径。 - 例子:
app = Flask(__name__)
2. static_folder
(可选)
- 类型:字符串(文件夹路径)
- 描述:指定 Flask 应用中静态文件存放的文件夹。静态文件是指不需要动态渲染的文件,如图片、JavaScript 和 CSS 文件。
- 默认值是
'static'
,即在项目根目录下查找static
文件夹。
- 默认值是
- 例子:
这会将静态文件存放在app = Flask(__name__, static_folder='assets')
assets
文件夹中。
3. static_url_path
(可选)
- 类型:字符串(URL 路径)
- 描述:指定用户访问静态文件的 URL 路径前缀。默认情况下,静态文件的 URL 路径是
/files
。你可以更改它来满足需求。 - 例子:
这样,访问静态文件的 URL 路径会变成app = Flask(__name__, static_url_path='/files')
/files
,而不是默认的/static
。比如,静态文件assets/img/logo.png
在文件系统中的路径是assets/img/logo.png
,但客户端访问时应该使用/files/img/logo.png
。
4. template_folder
(可选)
- 类型:字符串(文件夹路径)
- 描述:指定存放 HTML 模板的文件夹。Flask 默认会在项目根目录下查找名为
templates
的文件夹。 - 例子:
这样会将模板文件存放在app = Flask(__name__, template_folder='views')
views
文件夹中。
5. instance_path
(可选)
- 类型:字符串(路径)
- 描述:指定 Flask 实例文件夹的位置。Flask 实例文件夹用于存放配置文件和数据库等文件。默认情况下,它会在项目根目录下创建一个名为
instance
的文件夹。 - 例子:
app = Flask(__name__, instance_path='/path/to/instance')
6. instance_relative_config
(可选)
- 类型:布尔值(
True
或False
) - 描述:指定是否相对路径查找配置文件。当设置为
True
时,Flask 会相对于instance_path
查找配置文件。默认为False
。 - 例子:
app = Flask(__name__, instance_relative_config=True)
例子:综合使用
app = Flask(
__name__,
static_folder='static_files',
static_url_path='/assets',
template_folder='templates',
instance_relative_config=True
)
在这个例子中:
- 静态文件存放在
static_files
文件夹中。 - 静态文件的 URL 路径为
/assets
。 - 模板文件存放在
templates
文件夹中。 - 配置文件相对于实例文件夹查找。
总结:
Flask()
构造函数可以接受多个参数,用来定制 Flask 应用的路径设置、静态文件和模板文件的存放位置、配置文件的查找方式等。最常用的参数是 _ _name_ _
和 static_folder
。