使用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)
)那么在持续时间字段上使用默认值或在此问题上解决方法的正确方法是什么?
答案 0 :(得分:0)
默认值应为timedelta。这是Django中的一个错误,并将在1.8.1版本中修复。
请参阅:https://code.djangoproject.com/ticket/24566
所以使用默认值应该是:
time_passed = models.DurationField(default=timedelta())
答案 1 :(得分:0)
MatZeg 的 answer on this similar question 表明您仍然可以传递参数:
pause = DurationField(default=timedelta(minutes=20))