我希望能夠從我的項目中的應用程序中導入東西,而無需參考我的項目名稱。如何在我的PYTHONPATH中包含Django應用程序?
我的文件夾結構就像這樣;我有一個名爲djangoproject1的項目,裏面有一個名爲apps的文件夾,然後在該文件夾中有我的個人應用程序。
djangoproject1,應用程序和我所有的應用程序都有一個空的「__init__.py」文件。
在我的settings.py文件我有以下代碼:
import os
import sys
PROJECT_ROOT = os.path.dirname(__file__)
sys.path.insert(0, os.path.join(PROJECT_ROOT, "apps"))
我試着將我的應用程序到INSTALLED_APPS幾個方面:
'djangoproject1.apps.app1', 「djangoproject1 .apps.app2' ,
或
'apps.app1', 'apps.app2',
或
'APP1', 'APP 2',
但沒有任何工程。每當我嘗試做:
from app1 import *
我得到了一個未解決的導入錯誤。我正在使用最新版本的eclipse和django
啊。這解釋了事情。如果你添加到'settings.py'並且不執行'shell',你的'PYTHONPATH'不會改變。如果您希望應用程序在不使用'shell'的情況下是可導入的,那麼您將不得不將其添加到_system variable_'PYTHONPATH'中。您可以通過在生產環境中通過settings.py添加應用程序來逃脫。 – 2010-08-23 17:51:37
好的,非常感謝,所以現在通過Eclipse進行添加對於開發是很好的,只要我在settings.py中保留該代碼,當我部署它時,它也應該可以正常工作。 – JPC 2010-08-23 18:11:01