【问题标题】:Django: How to validate a birthdate entry as over 18Django:如何验证生日条目是否超过 18
【发布时间】:2018-01-31 08:04:32
【问题描述】:

可能是一个愚蠢的问题,但是在 Django 中验证日期字段表单条目是否超过 18 年的最简单方法是什么? (对于出生日期条目,验证年龄)

【问题讨论】:

标签: python django forms orm backend


【解决方案1】:

您可以在表单类中使用清理的方法, 像这样:

from django import forms

class BirthDateForm(forms.Form):
    birth_date = forms.DateField()

    def clean_birth_date(self):
        data = self.cleaned_data['birth_date']
        ...
            Traitment (do the delta with datetime.now and data)
        ...
        if birth_date_delta < 18 :
            raise forms.ValidationError("Access forbidden !")
        return data

【讨论】:

  • 如果您的用户在不同的时区并且是他们的生日怎么办?
猜你喜欢
  • 2010-12-21
  • 1970-01-01
  • 2018-05-11
  • 2012-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-08
相关资源
最近更新 更多