gpt4 book ai didi

python - Django:获取自某个日期以来第 25 次过去的次数

转载 作者:太空宇宙 更新时间:2023-11-04 04:13:57 24 4
gpt4 key购买 nike

你好,在我的 django 项目中,我有以下模型,我想制作一个 @property 函数来计算自 date_created 以来的第 25 次一个月。

例如:
我在 1.1.2019 上创建了模型该函数现在应该返回 3,因为从那以后还有 3 个 25th。

class Plan(models.Model):
title = models.CharField(max_length=50)
date_created = models.DateTimeField(default=timezone.now)
plan_type = models.IntegerField()
owner = models.ForeignKey(User, on_delete=models.CASCADE)

感谢您的帮助<3

最佳答案

我认为您应该看一下 dateutil 库中的 rrule 函数。

这应该可以为您提供所需的内容,但我还无法对其进行测试。

from datetime import datetime
from dateutil.rrule import rrule, MONTHLY
len(list(rrule(MONTHLY, bymonthday=(25), dtstart=PlanModel.date_created, until=datetime.now())))

如果你不想使用这个库,我会遍历几天查看每一天的数字,就像这样(也无法测试它)

from datetime import timedelta, datetime

def daterange(start_date, end_date):
for n in range(int ((end_date - start_date).days)):
yield start_date + timedelta(n)

start_date = PlanModel.date_created
end_date = datetime.now()

if start_date.day == 25:
c=1
else:
c=0

for single_date in daterange(start_date, end_date):
if single_date.day == 25:
c+=1

关于python - Django:获取自某个日期以来第 25 次过去的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55811748/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com