[英]Relative imports in Python Flask don't seem to work
我的Flask项目具有以下目录结构
├── API
│ ├── __init__.py
│ ├── controllers.py
│ ├── models.py
│ └── test
│ ├── first_test.py
│
├── config.py
├── requirements.txt
├── run.py
└── setup.py
我的setup.py
如下所示:
from setuptools import setup
setup(
name='project_name',
packages=['API'],
include_package_data=True
)
我担心如何将models
和app (__init__)
导入测试文件( first_test.py
)。
所以,到目前为止,我已经尝试过
from project_name.API import app
gives from project_name.API import app
E ImportError: No module named project_name.API
from ..API import app
from ..API import app
E ValueError: Attempted relative import in non-package
和
from .. import app
from .. import app
E ValueError: Attempted relative import in non-package
我不知道如何导入文件。 另外,我使用py.test API/test/first_test.py
运行测试文件
一种解决方案是在项目的根目录下创建一个setup.py
文件。
然后,您可以使用pip安装您的应用
pip install --editable .
这样,您可以从first_test.py文件导入应用程序。
from API import app
当然,最后一个import语句取决于app对象的位置。
有关更多信息,请参见烧瓶回购中的minitwit示例。
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.