Flask('application') 和 Flask(__name__) 的区别
- 论坛
- Flask('application') 和 Flask(__name__) 的区别
8 浏览
Flask('application') 和 Flask(__name__) 的区别
在官方的快速入门中,建议在使用单个模块时使用__name__
:
- ... 如果您使用单个模块(如此示例),应使用
__name__
,因为它的名称将根据启动为应用程序还是导入为模块而有所不同('__main__'
与实际导入名称)。...
然而,在它们的API文档中,当我的应用程序是一个包时,建议使用硬编码:
因此,提供的值非常重要。如果您使用单个模块,
__name__
始终是正确的值。但是,如果您使用包,则通常建议在此处硬编码您的包名称。
我可以理解为什么硬编码我的包名称更好,但为什么不硬编码单个模块的名称呢?换句话说,当Flask
接收到__main__
作为其第一个参数时,它可以获得什么信息?我看不出这样做如何使Flask更容易找到资源...