說我要打印我的所有安裝的應用程序在服務器啓動時的版本信息。我有這樣的設置:Python的實例/ Django的
Project
/app-one
__init__.py
otherstuff
/app-two
__init__.py
otherstuff
/__init__.py
/admin.py
/urls.py
/settings.py
主要初始化文件
import settings
if settings.DEBUG:
for app in settings.INSTALLED_APPS:
try:
import app
print getattr(app, '__version__', None)
except Exception:
pass
應用init file(s)
__version_info__ = ('0', '0', '1')
__version__ = '.'.join(__version_info__)
我進入通行證聲明..我想這是因爲方式實例工作在Python中,但我將如何解決它?
這個工程雖然:
import app
getattr(app, '__version__', None)
這個固定:
import settings
if settings.DEBUG:
for app in settings.INSTALLED_APPS:
app = __import__(app)
print getattr(app, '__version__', None)
嘗試添加打印語句以確保app init先運行。 –
至少刪除異常處理,看看錯誤是什麼 – akonsu
ImportError:沒有名爲app的模塊...似乎你不能導入一個變量,直到運行時才知道? –