使用CherryPy提供Django 1.7应用程序

时间:2014-11-17 06:27:38

标签: python django cherrypy

我试图使用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.可悲的是,这个解决方案对我不起作用。

我做错了什么?

提前谢谢。

2 个答案:

答案 0 :(得分:3)

我不知道这是否是正确的解决方案,但我能够通过插入

来解决我自己的代码中的这个问题
django.setup()
在调用之后立即

定义设置模块。

答案 1 :(得分:0)

我通过在wsgiserver2.py中导入后运行django.setup()来实现它。