Django:仅允许在一段时间内创建模型

时间:2018-11-01 16:31:31

标签: python django

在我的Web应用程序中,我具有模型Event和模型Registration(用于事件)。

假设活动于2019年1月31日13:00举行。现在,我必须确保人们只能注册例如直到事件模型中定义的注册截止日期。

我在Django中使用CBV,我想问一下我应该在代码中放入支票,以便人们只能在截止日期之前创建新的注册。在我的模板中,我已经进行了此检查,并且仅在截止日期之前显示该表单。但是,我还必须确保知道表单的人无法过帐到指定的站点。

Django中是否有解决此问题的默认方法?我应该用哪种方法检查?

1 个答案:

答案 0 :(得分:0)

我相信您最简单的选择将在呈现视图时调用的函数之内。

例如:

urls.py

`path('/somepath', views.RegistrationView)`

views.py

def RegistrationView(request):
    if datetime.datetime.now() > datetime.datetime(2019, 1, 31, 13):
        redirect('someOtherView')

类似的系统可以用于类视图