在Django中减去日期?

And*_*rew 1 python django

我有两个DateField变量,我想减去它们并将差异返回到最接近的月份的月份.我怎么能这样做?

谢谢您的帮助!

jos*_*tme 5

Datefields是datetime.date实例.你可以直接减去它们,这将给你一个timedelta.您可以通过timedelta.days访问timedelta表示的天数.让我们说datefield self.date设置为两个月前:

today = datetime.date.today()
n = today - self.date
months = int(n.days/30)
Run Code Online (Sandbox Code Playgroud)

在这种情况下应该给你几个月的数量2.根据你如何定义最接近的月份,你可能需要舍入而不是转换为int.