我有一个包含两个应用程序的项目。它们都使用mongo-engine数据库模型文件。同样,它们必须从不同的Docker容器中启动,但是在fird容器中使用相同的Mongo数据库。现在我的应用程序结构如下:
app_root/
app1/
database/
models.py
main.py
app2/
database/
models.py
main.py
而且效果很好,但是我必须支持两个相同的文件database / models.py。我不想这样做,我做了下一个结构:
app_root/
shared/
database/
models.py
app1/
main.py
app2/
main.py
不幸的是,它对我不起作用,因为当我在main.py中尝试此操作时:
from ..shared.database.models import *
我知道
Exception has occurred: ImportError
attempted relative import with no known parent package
当我尝试时
from app_root.shared.database.models import *
我知道
Exception has occurred: ModuleNotFoundError No module named 'app_root'
请,我该怎么办?
在执行导入的文件中,尝试添加以下内容:
import os
import sys
sys.path.append(os.path.abspath('../../..'))
from app_root.shared.database.models import *