1

我正在创建一个日历应用程序,其中每个日期都有 3 种状态之一:可用、可能可用和不可用。试图找出适合这种情况的最佳模式。

一种想法可能是拥有一个带有 field 的 UserDate 模型state。这样做的问题是数据库每年都会有#-of-users- x 365行——对于一个中等大小的应用程序来说,它似乎增长得太快了。

另一个想法可能是有一个默认状态,并且仅当用户表示他们在该日期的可用性与默认值不同时才创建一个 UserDate 对象。不过,这似乎令人费解。

有没有人处理过这种情况?关于解决此问题的最佳方法有什么建议吗?

4

1 回答 1

0

当您创建一个新用户时,您不希望插入他们未来 50 年的记录。只有在存在非默认值时才创建 UserDate 对象才是您应该做的。

如果您可能有许多具有相同状态的连续日期,您可以考虑为用户存储一系列日期。例如,如果它们在整个 12 月都不可用,那么这可以表示为单行。

想想你想从你的数据库中提取什么样的信息,以及你的每一个可能的设计会有多困难。

于 2013-07-24T05:55:17.470 回答