使用Django调度器应用程序和你自己的模型



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

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

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

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

我对Python和Django都很陌生,所以有人能给我一些建议吗?

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

Django Scheduler有一个相当隐藏的设置(甚至没有在官方文档中报告),它可以做到这一点:

SCHEDULER_BASE_CLASSES

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

因此,您可以定义自己的抽象模型并使Calendar扩展它。

编辑

正如@Jheasly在他的评论中所说,这个特性现在已经被记录了。

相关内容

  • 没有找到相关文章

最新更新