只在Django启动一次时执行代码?

只在Django启动一次时执行代码?

我正在编写Django中间件类,我希望在启动时只执行一次,以初始化其他一些任意代码。我遵循了斯多兰发布的非常好的解决方案这里,但是“Hello”消息被输出到终端。两次..例如:

from django.core.exceptions import MiddlewareNotUsedfrom django.conf import settingsclass StartupMiddleware(object):
    def __init__(self):
        print "Hello world"
        raise MiddlewareNotUsed('Startup complete')

在Django设置文件中,我的类包含在MIDDLEWARE_CLASSES名单。

但是当我使用runserver运行Django并请求一个页面时,我就进入了终端。

Django version 1.3, using settings 'config.server'Development server is running at http://127.0.0.1:8000/Quit the server with CONTROL-C.Hello world[22/Jul/2011 15:54:36] "GET / HTTP/1.1" 200 698Hello world[22/Jul/2011 15:54:36] "GET /static/css/base.css HTTP/1.1" 200 0

你知道为什么“你好世界”会印两次吗?谢谢。


跃然一笑
浏览 3181回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP