在查询中设置Django DurationField类型的值

时间:2015-11-20 19:26:33

标签: python django

我想将值传递给Django的DurationField并将其存储到数据库中。 在检查文档后,我认为我们应该使用timedelta数据类型来设置Duratioin Field值。如下代码
TimeRecord(models.Model): duration = models.DurationField()

我还尝试使用字符串类型和整数类型来设置持续时间的值,但它们无法工作。所以我想如何设置DurationField类型的值?我正在使用SQLite数据库。

我的模特:

record = TimeRecord(duration = timedelta(hours=5))
record.save()

实例化:

{{1}}

1 个答案:

答案 0 :(得分:1)

以下是一个例子:

from datetime import timedelta
from django.db import models

class TimeRecord(models.Model):
    duration = models.DurationField(default=timedelta(minutes=40))

你可以创建一个这样的记录:

from datetime import timedelta

# create a new record 
record1 = TimeRecord.objects.create()
record1.duration
# output : datetime.timedelta(0, 2400)
# you can create an another
record2 = TimeRecord.objects.create(duration=timedelta(minutes=20))
record2.duration
# output : datetime.timedelta(0, 1200)