Skip to main content
 首页 » 编程设计

python之在 django 应用程序中显示出生日期

2025年05月04日26bjzhanghao

如何显示从出生日期获得的年龄?有什么建议吗?

模型.py

from django.db import models 
import datetime 
 
dob = models.DateField(max_length=8) 
age = models.IntegerField()  
def __str__(self): 
    today = date.today() 
        age = today.year - dob.year 
    if today.month < dob.month or today.month == dob.month and today.day < dob.day: 
        age -= 1 
    return self.age  

谢谢, 辐射

请您参考如下方法:

你应该使用 python-dateutil获取日期之间的 relativedelta:

from dateutil.relativedelta import relativedelta 
from django.db import models 
 
dob = models.DateField(max_length=8) 
age = models.IntegerField()  
def __str__(self): 
    today = date.today() 
    delta = relativedelta(today, self.dob) 
    return str(delta.years)