【问题标题】:Can't create recurring event in django-scheduler无法在 django-scheduler 中创建重复事件
【发布时间】:2016-08-13 16:55:45
【问题描述】:

我想指定一个在每天 16-21 小时之间发生的事件。

我怎样才能做到这一点?

我已经尝试了很多来做到这一点,例如通过使用“每日”频率规则将 Event.start 指定为 16:00 并将 Event.end 指定为 21:00,但没有运气。仅显示 15:30 到 16 之间的事件。

Event 模型上的 _get_occurrence_list 每隔半小时调用一次。

我已经怀疑这是可能的。 django-scheduler 支持这样的用例吗?

【问题讨论】:

  • 您使用的是什么调度程序。?其次,你确定你没有使用两个不同的 timezones ,一个是 UTC (可能在某些设置中),一个是你所在的地方。?
  • django-scheduler 我使用:github.com/llazzaro/django-scheduler 这是我的时区设置:TIME_ZONE = 'Europe/Warsaw',我的 Linux 上也是如此。无论如何,如果时区有问题,我假设它应该显示事件中定义的 5 小时内的发生,只是有一些偏移量(在日历上有点向上或向下)。但它只显示 2 次而不是 10 次...

标签: django rrule django-scheduler


【解决方案1】:

使用 HOURLY 规则创建一个事件。 然后给它这些参数:“byhour:16,17,18,19,20;”

在数据库中,您应该看到以下内容:

  • schedule_event:

    • 开始 = 开始日期,16 小时
    • end = 开始日期,17 小时(实际上,这里是 START 日期)
    • rule_id = X(任何数字,但与下面的 X 相同)
  • schedule_rule:

    • id = X
    • 频率 = 每小时
    • 参数:按小时:16,17,18,19,20;

参考: http://labix.org/python-dateutil#head-470fa22b2db72000d7abe698a5783a46b0731b57

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-17
    • 2020-11-17
    • 1970-01-01
    • 2019-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多