如何正确地使用Django的DurationField
?
当我使用time_passed = models.DurationField(default=0)
时
'int' object has no attribute 'total_seconds'
)当我使用time_passed = models.DurationField(default=timedelta())
时
ValueError: Cannot serialize: datetime.timedelta(0)
)那么,在工期字段上使用默认值或解决此问题的正确方法是什么?
发布于 2015-04-19 22:38:33
缺省值应该是一个时间增量。这是Django中的一个bug,并在1.8.1版本中进行了修复。
请参阅:https://code.djangoproject.com/ticket/24566
因此,使用默认值应该是:
from datetime import timedelta
time_passed = models.DurationField(default=timedelta)
发布于 2021-01-10 10:55:09
MatZeg的answer on this similar question显示,您仍然可以传递参数:
pause = DurationField(default=timedelta(minutes=20))
https://stackoverflow.com/questions/29699857
复制