我已经成功地将DHTMLX调度程序用于CRUD事件记录并从我的数据库中使用。我的要求是反复发生的事件。
目前,如果我创建一个定期事件,则会在数据库上创建一条记录,并添加重复的详细信息。
我想要做的是将个别定期事件保存到数据库而不是单个" master"事件
我知道DHTMLX调度程序通常不允许这样做,因此我将不得不使用API编写一些代码,但是我找不到从主服务器写入数据库之前从主服务器中提取单个事件的方法。
任何帮助将不胜感激。
答案 0 :(得分:2)
没有简单的方法来做你需要的事情(至少我不知道这样的方式)。 你可以试试几件事。
首先,您可以尝试在客户端上实现所有逻辑。 虽然调度程序不提供将重复事件解析为单个条目的公共方法,但是可以使用private method
因此,您可以检测事件何时添加到调度程序中,将其拆分为单独的记录,然后发送到将执行数据库插入的处理程序。这是一个小型演示http://docs.dhtmlx.com/scheduler/snippet/451753cb
或者,您可以尝试在插入之前解析服务器上的recuring事件。
实施将取决于您使用的服务器端。
如果是PHP,那么有一个重复事件的助手 https://github.com/DHTMLX/scheduler-helper-php但是,它只能 从数据库中读取事件,没有解析单个的方法 您提供的活动,因此需要一些编码才能使其有效。
如果您使用.NET,帮助程序库会提供所需的方法 可以处理重复事件并将其插入到db中而不会很大 问题 http://scheduler-net.com/docs/recurring-events.html#getting_instances_of_recurring_events
如果你使用不同的平台 - 我担心你不得不写 你自己的重复事件解析器,以便在它上面处理它们 服务器端。
事件以这种方式保存后,调度程序将不再将其识别为重复序列,因此不会立即内置控件来删除或修改所有事件。
正如您现在可能已经看到的那样,虽然有几种可能的方法可以实现您的需求,但也存在许多可能带来很多痛苦的问题。
也许您可以澄清为什么需要这样的逻辑。可能更容易解决原始问题。