为什么要使用Flask的open_resource函数?

6

在阅读 Flask API 文档时,我遇到了这个 open_resource 方法,它可以像这样打开文件:

with app.open_resource('schema.sql') as f:
contents = f.read()
do_something_with(contents)

但为什么不直接这样做呢?

with open('schema.sql') as f:
contents = f.read()
do_something_with(contents)

我想看一个使用情况,证明app.open_resource能够做一些open已经无法做到的事情。
1个回答

10

根据文档:

打开应用程序资源文件夹中的资源。

使用 app.open_resource, 路径始终相对于应用程序的根目录(资源)文件夹。它们只能以读取方式打开,因为在生产中允许写入应用程序文件是不好的。

使用 open,相对路径是相对于当前目录。可以以任何模式打开文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接