Anda mungkin ingin menggunakan relativedelta
dari dateutil
, lebih mudah untuk menghitung waktu:
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
adalah 25 tahun yang lalu, age_36
adalah 36 tahun yang lalu, Anda hanya menanyakan ulang tahun orang-orang yang jatuh antara 25 dan 36 tahun yang lalu.
Untuk lte
dan gte
periksa django doc
untuk detailnya.
Sunting :
Sebenarnya, Django orm mendukung range
kueri, jadi lakukan saja:
Employees.objects.filter(birth_year__range=[age_36, age_25])