在特定日期开/关Django应用程序

时间:2015-02-01 09:14:04

标签: django

我正在创建一个Django项目(里面有很多Django应用程序),我需要一些帮助。 我只需要添加一个小功能。 管理员将决定应用程序将向所有人显示的日期。 我希望应用程序在上述日期之后自动将所有用户重定向到特定页面。 我该怎么办?

1 个答案:

答案 0 :(得分:2)

简单的中间件(https://docs.djangoproject.com/en/1.7/topics/http/middleware/)将解决您的要求。像这样:

import datetime
from django.conf import settings
from django.http import HttpResponseRedirect

class OnOffMiddleware(object,):
    def process_request(request):
        if datetime.datetime.now() > settings.SHOW_DATE:
            # Should redirect people
            return HttpResponseRedirect('redirect to a specifc page')
        else: 
            # Continue as usual
            return None

将上述内容放入项目中的某个模块中,并将其添加到MIDDLEWARE_CLASSES设置的顶部(https://docs.djangoproject.com/en/1.7/topics/http/middleware/#activating-middleware)。