我需要为我的 Flask 应用程序运行单元测试。在我的测试配置文件中,我需要create_app从同级目录中导入flask函数来初始化测试应用程序。如果没有导入错误,我无法弄清楚。
我试过把__init__.py几乎每个文件夹都放上,但没有成功。我已经读过不建议编辑 sys 路径,所以我想要一个没有的解决方案。
文件夹结构
root/
----__init__.py
----server/
--------__init__.py
--------database.py
----tests/
--------__init__.py
--------config.py
配置文件
from server import create_app
from server.database import db
引发此错误:
Traceback (most recent call last):
File "tests/config.py", line 2, in <module>
from server import create_app
ModuleNotFoundError: No module named 'server'
和:
from ..server import create_app
from ..server.database import db
引发此错误:
Traceback (most recent call last):
File "tests/config.py", line 2, in <module>
from ..server import create_app
ValueError: attempted relative import beyond top-level package
有人可以解释为什么它不起作用以及 pythonimport通常是如何工作的吗?我一直无法弄清楚它们。
神不在的星期二
相关分类