Du kanske vill använda relativedelta
från dateutil
, det är bekvämare att beräkna tiden:
import datetime
from dateutil.relativedelta import relativedelta
today = datetime.date.today()
age_25 = (today - relativedelta(years=25)).year
age_36 = (today - relativedelta(years=36)).year
Employees.objects.filter(birth_year__lte=age_25, birth_year__gte=36)
age_25
är 25 år sedan, age_36
är 36 år sedan, frågar du bara folks födelsedagar infaller mellan 25 och 36 år sedan.
För lte
och gte
kolla django doc
för detaljer.
Redigera :
Egentligen stöder django orm range
fråga, så gör bara:
Employees.objects.filter(birth_year__range=[age_36, age_25])