0

我正在嘗試實施帶有可重複事件的日曆。 簡單的例子(用人類語言)是:'10:00到12:00之間的每個工作日發生的事情'如何使用可重複事件實現日曆?

什麼是將這些數據存儲在數據庫中並在數據庫中進行搜索的最正確方法。 搜索可能類似於「2012年2月21日星期二給我所有活動」。

我打算使用關係數據庫來存儲它們。

P.S.我打算使用Python和Django,因此可以使用現有的庫。

回答

3

你要想想你要如何確定最佳的方式來存儲數據時要實現這一點:

  • 應用戶能夠重新安排或刪除重複的事件之一
  • 類似地,如果對經常性事件的更改會更改所有事件或僅更改未來事件?
  • 你是否在意在數據庫中創建大量記錄?

如果答案是肯定的前兩個,沒有到最後,以實現最簡單的辦法是讓事件有一個父的事件,然後創建一個名爲復發的一個單獨的記錄內容涉及如何基地事件再次發生。然後每當週期性事件發生變化時,都會觸發一個腳本來創建/重新創建事件。

搜索事件本身變得簡單:因爲它們是實際事件,所以您只需搜索它們即可。

相關問題