我正在尝试创建一个烧瓶应用程序。我想在我的应用程序中包含一个单独的模块,将逻辑分成不同的单元。单独的模块名为“validator”,我当前的目录结构如下所示:
src/
validation-api/
__init__.py
api.py
validator/
__init__.py
validator.py
validation-form/
...
updater/
...
我的Flask应用程序在api.py
中,我试图做from validator import ValidationOptions, ValidationResult, ValidationRun
,其中ValidationOptions
,ValidationResult
,和{
我得到了错误
ImportError: No module named validator
如果我尝试from .validator...
或from ..validator
我就会得到错误
ValueError: Attempted relative import in non-package
我不太明白模块和包在Python中是如何工作的。有什么建议吗?在
内容api.py文件公司名称:
^{pr2}$我使用以下三个命令启动烧瓶:
set FLASK_APP=api
set FLASK_DEBUG=1
python -m flask run
多亏了@Daniel Roseman,我才弄清楚发生了什么。我将
FLASK_APP
环境变量改为validation-api.api
,并从src
运行python -m flask run
命令。所有进口产品现在都在工作!在如果你有一个简单的应用程序
并且
app.py
中有import something
语句,然后确保源目录中没有__init__.py
。在请参见the doc了解有关原因的解释。在
相关问题 更多 >
编程相关推荐