2015-10-05 191 views
1

我有兩個Django應用程序將最終共享大量代碼(既引用外部API,又對該API返回的數據進行操作)。我試圖找出如何正確分享這兩個應用程序之間的代碼。如何讓Django應用程序導入另一個Django應用程序或模塊?

到目前爲止,我一直想有一個年代由前兩個進口第三APP,所以我的文件結構看起來是這樣的:


\MyProject 
    \app1 
     __init__.py 
     views.py 
    \app2 
     __init__.py 
     views.py 
    \common 
     __init__.py 
     myCommonCode.py 

但是當我嘗試從APP1或APP2我以下沒有看到myCommonCode.py


import common 
print dir(common) 

所有三個應用程序都包含在我在我的settings.py INSTALLED_APPS。

我確定有一些簡單的我錯過了,我似乎無法找出它是什麼。爲了澄清,我是不是試圖在這一點上共享相同的模型,但相同的python代碼伸出到外部的API。

+1

如果沒有模式,沒有理由把普通包INSTALLED_APPS。 –

+0

@DanielRoseman很高興知道。從settings.py中刪除它 –

回答

5

如果您導入程序包,則看不到子模塊。你必須導入它在 __init__.py或直接:

from common import myCommonCode 
相關問題