我有一個包含兩個應用程序的django項目,我也希望通過Heroku的作業調度工具來處理一些常規數據庫操作。Django在非應用程序包中導入應用程序模型
爲了處理預定作業的任務,我在我的頂級django項目文件夾中有一個單獨的包。該軟件包需要訪問我的應用中定義的模型。但是,我無法找到如何從我的應用程序導入模型。
的結構如下:
myproject
|
| myproject
| | __init__.py
| | ...
| myapp1
| | __init__.py
| | models.py
| | ...
| myapp2
| | __init__.py
| | models.py
| | ...
| customjobmodule
| | __init__.py
| | ...
| ...
我曾嘗試使用sys.path.append導入(),但他們都不工作的幾種方法。他們都說沒有模塊名爲myapp1.models
import os
import sys
cwd = os.getcwd()
sys.path.append(cwd + '/../myapp1/')
from myapp1.models import Model1
ImportError: No module named myapp1.models
有沒有辦法做到這一點?在四處搜索時,我發現有很多關於在Django應用程序之間使用模型的信息,但完全不在django框架之外使用它們。
做你試試:'sys.path.append(CWD + '../myapp1/')#注意失蹤slash' 或直接從'進口..myapp1型號#注雙點syntax'? – efkin