我在Django框架中有一个python视图,它可以访问一个数据库,在这个表中有一个名为Sessions的表我有星期几和开始时间。我想要做的是根据我网站的当前日期和时间获得接下来的6个会话。
sessions = []
for i in range(7):
dow = (int(day_of_week) + i)
dow_mod = dow % 7
week_numb_mod = week_numb
if dow >= 7:
week_numb_mod = week_numb + 1
begin_code = str(now.year) + "-W" + str(week_numb_mod)
begin_date = datetime.datetime.strptime(begin_code + '-0', "%Y-W%W-%w")
actual_date = begin_date + datetime.timedelta(days=dow_mod)
for record in Session.objects.filter(day_of_week=dow_mod):
actual_datetime = datetime.datetime.combine(actual_date, record.start_time)
if now < actual_datetime:
sessions.append(record)
sessions = sessions[:6]
出于某种原因,当我在周中时,actual_date跳了一周,我似乎无法弄明白。如果有人知道我哪里出错或知道更简单的方法,那么帮助就会受到欢迎。