Jinja2在日历中每月增加3天

时间:2019-07-02 18:52:19

标签: python-3.x templates django-templates jinja2

似乎在将少于29天的月份中的天数加到天上时遇到问题。如果天数是30天或30天以上,我将添加一个月,然后减去总天数+ 10以得到新日期。否则,如果天数少于29,我想将天数加10。

1 个答案:

答案 0 :(得分:2)

如果您发现自己正在进行手动日期数学运算,请后退一步。这是永远的正确解决方案。您不了解有关时区,leap年,夏时制等的所有规则。

使用timedelta将日期添加到日期中,并使用strftime()格式化显示日期。为了神的爱,不要在Jinja中这样做!获取在Python中设置的日期,然后将其传递到Jinja中以供显示。

Python文件

from datetime import timedelta
newdate = mydate + timedelta(days=3)

Jinja模板

{{ newdate.strftime('%Y/%m/%d') }}