如何存储很多日历日期

时间:2018-08-03 04:44:50

标签: sql ruby-on-rails database

用户可以从日历中选择要阻止的日期。如果我将每个选定的日期作为记录/行存储在“日历”表中,那么将存储很多行/记录。有没有更有效的方法(较少处理)呢?

1 个答案:

答案 0 :(得分:0)

这取决于用户是要阻止所有人还是自己阻止日期:

如果他们阻止了每个查看日期的用户的日期,那么最好将其存储在Calendar模型表中,因为每个用户每次加载日历时都需要加载该日期。

如果每个用户都在阻止日期,那么只有他们才能看到日期被阻止,最好将数据存储在用户模型表中,也可以将其存储为用户和日历之间的关联。这取决于您的日历模型的设置方式。如果需要,可以在用户表中有一列,用于存储代表该用户被阻止的所有日期的数据。这将避免您正在谈论的大量行。这可以通过User表中的JSON列完成。您还可以通过创建UsersCalendar表将日期被阻止的数据存储为用户和日历之间的关系。

有更详细的问题,我们可以为您提供更详细的答案。