我试图使用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.可悲的是,这个解决方案对我不起作用。
我做错了什么?
提前谢谢。
答案 0 :(得分:3)
我不知道这是否是正确的解决方案,但我能够通过插入
来解决我自己的代码中的这个问题django.setup()
在调用之后立即定义设置模块。
答案 1 :(得分:0)
我通过在wsgiserver2.py中导入后运行django.setup()来实现它。