如何从models.DateField获取Year值?

时间:2016-12-14 15:55:51

标签: django python-2.7 python-3.x django-models

我想计算年龄。我试过下面的代码...

var_dump([] > -1); // true
var_dump([] > 0); // true
var_dump([] > 222222222) // true

我收到了错误

DOB = models.DateField()
Age = models.IntegerField(max_length= 2, default= date.today().year - DOB.year)

如何从DateField获取Year值..

2 个答案:

答案 0 :(得分:3)

您无法像这样设置动态默认值,也不需要将其存储在数据库中

只需将其设为属性(甚至可以cached_property

@property
def age(self):
   return date.today().year - self.DOB.year

答案 1 :(得分:0)

在views.py中:

import datetime
from .models import *

def age(self):
    return datetime.date.today().year - self.DOB.year

您可以使用该返回值显示到HTML文件中或存储到数据库中。