首页 > 解决方案 > Python:如何将日期列表转换为会议日期列表

问题描述

我正在使用 Python/Django 开发 Web 应用程序,并且正在尝试制作日历。我正在使用日历模块中的 Python 的 HTMLCalendar 类。我有以下内容models.py

class Meeting(models.Model):
    id = models.AutoField(primary_key=True)
    admin = models.ForeignKey(CustomUser, on_delete=models.CASCADE)
    name = models.CharField(max_length=20, null=True)
    location = models.CharField(max_length=200, null=True)
    start_date = models.DateTimeField(default=None, null=True)
    end_date = models.DateTimeField(default=None, null=True)
    description = models.CharField(max_length=2000, null=True)

会议start_date的显示格式如下:2019-12-03 00:00:00

我正在覆盖formatday()HTMLCalendar 中的函数。此函数将一天作为其参数之一。我有一个会议列表,如果会议是在传递给函数的那一天,我希望日历在日历中的那一天的单元格上显示这些会议。

例如,假设我正在考虑的日期是某个月份的 3 号。我希望能够以某种方式从start_date值中提取会议日期(例如,从日期 2019-12-03 中提取第 3 天)。但是,我不是这样做的最佳方法。任何见解都值得赞赏。

标签: pythondjangodatetime

解决方案


# if you are getting your start date like this, then you have to convert start date into datetime object

from datetime import datetime

start_date = '2019-12-03 00:00:00'

# to show the day only in python

start_date_day = datetime.strptime(start_date, '%Y-%d-%m %H:%M:%S').day
print(start_date_day)

推荐阅读