Python、Django、datetime
在我的模型中,我有两个datetime属性:Python、Django、datetime,python,django,datetime,Python,Django,Datetime,在我的模型中,我有两个datetime属性: start_date end_date 我想把结束日期计算为一周 在开始日期之后 我如何才能做到这一点?如果您总是希望结束日期比开始日期晚一周,那么您可以做的是为您的模型创建自定义保存方法。 >>> import datetime >>> start_date = datetime.datetime.now() >>> end_date = start_date + datetime.timed
start_date
end_date
我想把结束日期计算为一周
在开始日期之后
我如何才能做到这一点?如果您总是希望结束日期比开始日期晚一周,那么您可以做的是为您的模型创建自定义保存方法。
>>> import datetime
>>> start_date = datetime.datetime.now()
>>> end_date = start_date + datetime.timedelta(7)
>>> print end_date
另一种选择是使用信号代替。结果是一样的,但是由于您正在处理模型数据,我建议您使用自定义保存方法。它的代码如下所示:
class ModelName(models.Model):
...
def save(self):
# Place code here, which is excecuted the same
# time the ``pre_save``-signal would be
self.end_date = self.start_date + datetime.timedelta(days=7)
# Call parent's ``save`` function
super(ModelName, self).save()
您可以在以下位置了解django文档中如何调用save方法/信号:如果您总是希望结束日期在开始日期后一周,您可以做的是为您的模型创建一个自定义保存方法。 另一种选择是使用信号代替。结果是一样的,但是由于您正在处理模型数据,我建议您使用自定义保存方法。它的代码如下所示:
class ModelName(models.Model):
...
def save(self):
# Place code here, which is excecuted the same
# time the ``pre_save``-signal would be
self.end_date = self.start_date + datetime.timedelta(days=7)
# Call parent's ``save`` function
super(ModelName, self).save()
您可以在以下位置了解django文档中如何调用save方法/信号:基本上只需在开始日期前添加7天,使用timedelta类基本上只需在开始日期前添加7天,使用timedelta类通常(但不总是)最好有开始时间和持续时间。通常(但并非总是)最好有一个开始时间和持续时间。如果你要使用datetime软件包,别忘了阅读如果你要使用datetime软件包,别忘了阅读