3

我正在尝试运行 tornadio(python 的 socket.io)来使用 django。有没有办法在 tornado 中做这样的事情(运行 django 作为中间件),或者我可以从 django 中访问 tornado (取消注释第二个应用程序定义路由直接到 django):

#!/usr/bin/env python
import os
import tornado.httpserver
import tornado.ioloop
import tornado.wsgi
import sys
sys.path.append('..')

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello, world")

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
import django.core.handlers.wsgi

wsgi = django.core.handlers.wsgi.WSGIHandler()
django_container = tornado.wsgi.WSGIContainer(wsgi)

application = tornado.web.Application([
    (r"/", MainHandler),
    django_container
])
# application = django_container

tornado.httpserver.HTTPServer(application).listen(8888)
tornado.ioloop.IOLoop.instance().start()
4

1 回答 1

2

我会考虑使用这个项目来提供帮助: https ://github.com/koblas/django-on-tornado

它是 tornado 和 django 的集成,允许您执行以下操作:

python manage.py runtornado --reload 8888

包括一个使用 django 和 tornado 构建的示例聊天服务。

于 2011-04-14T15:19:30.110 回答