我正在构建一个应用程序,最终用户将使用一个管理屏幕来安排首页上的内容。他们将选择两个日期,一个开始日期和一个结束日期。
显然,我不想循环整个集合,看看今天的日期是在每次首页加载时在开始日期还是结束日期之间。
另外,不希望用户能够安排两件相互重叠的事情。在保存之前,应该有一个比检查与每个记录的冲突更好的方法。
使用Node/Socketio/Express/Mongoose
我可以在Mongo中索引集合,然后进行相应的排序,以测试今天的日期,并确保没有冲突的时间表。此外,我可以有一个标志,一旦一天的变化,意味着当前的内容。我想也许有更好的方法。
有人有什么想法吗?
发布于 2012-02-08 04:12:07
显然,我不想循环整个集合
对我来说不太明显。这个收藏品有多大?
不管怎么说,你为什么要循环整个收藏?将它们放入按到期时间排序的列表中。随着时间的推移,您可以丢弃所有过期的东西。因此,您只需检查第一个元素是否是当前元素。当它过期时,丢弃它并使用下一个。
发布于 2012-02-08 03:28:26
听起来你可以用缓存来解决这个问题。换句话说,继续循环整个集合,但只有在缓存无效时才这样做。显然,这将取决于您的需求的细节,但如果您能够摆脱它,还需要看一些东西。
https://softwareengineering.stackexchange.com/questions/133887
复制相似问题