7

使用https://github.com/llazzaro/django-scheduler我想在日历中使用我自己的模型,它们也有开始和结束日期。

我认为有多种方法可以解决这个问题:

  1. 破解当前的日程应用程序,使其与我的模型交互。
  2. 在创建我的模型时创建默认事件模型,使用 save() 覆盖。
  3. 使用 django-scheduler 应用程序的“事件与通用对象的关系”功能。
  4. 扩展默认事件模型以满足我自己的要求。

我想使用第三个选项,但我不知道如何使用它,因为日历链接到单个对象。

我是 Python 和 Django 的新手,有人可以给我建议吗?

4

2 回答 2

4

要实现选项 3,您的通用对象将具有链接到Event该日历应用程序中的对象的外键。

于 2014-06-20T12:27:55.157 回答
2

Django Scheduler 有一个非常隐蔽的设置(甚至没有在官方文档中报道),它可以做到这一点:

SCHEDULER_BASE_CLASSES

SCHEDULER_BASE_CLASSES = {
    'Event': ['my_app.models.EventAbstract1', 'my_app.models.EventAbstract2']
    'Calendar': [my_app.models.CalendarAbstract']
}

因此,您可以定义自己的抽象模型并让 Calendar 对其进行扩展。

编辑

正如@Jheasly 在他的评论中所说,此功能现已记录在案。

于 2017-05-03T10:36:05.430 回答