首页 > 解决方案 > 通过在 Python 中覆盖 HTMLCalendar 函数的“无效语法”

问题描述

我想在 Django 中创建一个带有日历的网站。因此,我在网上找到了一个教程。在这里你必须覆盖 HTMLCalendar 中的函数当我使用那里的代码时出现错误:

      File "/home/work/Desktop/Coden /Projects/Calendar/anotherone/cal/utils.py", line 18
d += f"<li> {event.title} </li>"

教程 - 覆盖函数时: https ://www.huiwenteo.com/normal/2018/07/24/django-calendar.html

这只是一个 Django 项目。我在 Ubuntu 上使用 Visualstudio 代码编写代码。这里从文件开始。我认为它的发生是因为 " 和以下 HTML 代码。如您所见,这不是一次又一次地出现在文件中。我希望有人可以为我提供整个文件的解决方案。


from datetime import datetime, timedelta
from calendar import HTMLCalendar
from .models import Event

class Calendar(HTMLCalendar):
   def __init__(self, year=None, month=None):
       self.year = year
       self.month = month
       super(Calendar, self).__init__()

   # formats a day as a td
   # filter events by day
   def formatday(self, day, events):
       events_per_day = events.filter(start_time__day=day)
       d = ''
       for event in events_per_day:
           d += f"<li> {event.title} </li>"

       if day != 0:
           return f"<td><span class='date'>{day}</span><ul> {d} </ul></td>"
       return '<td></td>'


我希望我可以在修复错误后显示日历。

标签: pythonhtmldjangocalendar

解决方案


推荐阅读