我正在嘗試使用CherryPy服務Django 1.7應用程序。啓動腳本如下:使用CherryPy服務Django 1.7應用程序
import wsgiserver
import sys
import os
import django.core.handlers.wsgi
if __name__ == "__main__":
sys.path.append(os.path.realpath(os.path.dirname(__file__))) # add django project absolute path
# Startup Django
os.environ['DJANGO_SETTINGS_MODULE'] = 'my_project.settings'
server = wsgiserver.CherryPyWSGIServer(('127.0.0.1', 8001), django.core.handlers.wsgi.WSGIHandler())
try:
server.start()
except KeyboardInterrupt:
print 'Stopping'
server.stop()
一切都安裝好。然而,當我嘗試訪問該應用程序(Django的成功頁面),我得到一個錯誤:
AppRegistryNotReady: The translation infrastructure cannot be initialized before the apps registry is ready. Check that you don't make non-lazy gettext calls at import time.
讀書的時候,我發現你的runserver前的遷移運行,還可以添加django.setup()來wsgi.py 。可悲的是,解決方案不適合我。
我做錯了什麼?
預先感謝您。
Django 1.7在安裝時導入所有模型文件。如果你在你的模型中做了一些依賴於已經發生的設置的東西(比如非惰性的gettext,它需要知道當前的語言),那麼這個錯誤就會失敗。 – RemcoGerlich