如何使用多个选择值减去日期时间

时间:2015-05-21 10:13:19

标签: python django

我正在考虑一种通过减去当前日期的多选项中的值来计算日期的方法

我有一个模型,它有多个选项,我想用datetime.datetime.now减去值,但我不确定应该怎么做。

REMINDER_CHOICES = (
    (5,'5 minutes before'),
    (15, '15 minutes before'),
    (30, '30 minutes before'),
    (60, '1 hour before'),
    (120, '2 hours before'),
    (240, '4 hours before'),
    (1440, '1 day before'),
)

2 个答案:

答案 0 :(得分:3)

只需减去这样的timedelta:

date_b = date_a - datetime.timedelta(minutes=30)

date_b = date_a - datetime.timedelta(days=2, minutes=30)

答案 1 :(得分:2)

您可以使用dateutil来添加和减去日期时间。例如..

    import dateutil.relativedelta
    datetime.datetime.now() + dateutil.relativedelta.relativedelta(day=5)

如果你想减去那么:

    datetime.datetime.now() + dateutil.relativedelta.relativedelta(day=-5)