У меня есть некоторая фильтрация даты в django, которую я просто не вижу, что не так.
У меня есть модель с этим полем:
date_of_birth = models.DateField(blank = True, null=True, auto_now=False, auto_now_add=False)
Затем я выбираю все данные
users = UserDetails.objects.all()
У меня есть 2 строки в базе данных и два возвращенных объекта
>>> users
[<UserDetails: UserDetails object>, <UserDetails: UserDetails object>]
>>> users[0]
<UserDetails: UserDetails object>
Я вижу каждое значение объекта date_of_birth
>>> users[0].date_of_birth
datetime.date(1971, 9, 28)
Однако какой-либо фильтр, который я пробую, всегда дает сбой?
>>> users = users.filter(date_of_birth__year >= 1970)
Traceback (most recent call last):
File "<console>", line 1, in <module>
NameError: name 'date_of_birth__year' is not defined
>>> users = users.filter(date_of_birth == datetime.date(1971, 9, 28))
Traceback (most recent call last):
File "<console>", line 1, in <module>
NameError: name 'date_of_birth' is not defined
>>> users = users.filter(date_of_birth == '1971-09-28')
Traceback (most recent call last):
File "<console>", line 1, in <module>
NameError: name 'date_of_birth' is not defined
Может кто-нибудь помочь объяснить, что здесь не так?
Я в растерянности.
Спасибо.