我需要在Rails应用程序中实现预订功能,并确保预订不重叠。尽管
如果我比较一个预订在另一个预订结束时刚好开始的情况(
看起来ValidatesOverlap可以解决这个问题,包括边缘重叠。
有什么建议吗?
cover?
和between?
方法不太适合我的需求,但我必须确保与同一模型上的其他潜在范围相比较的时间范围的唯一性,并且要高效地完成这个任务。我认为可以使用overlaps?
来解决这个问题。但问题是,对于像这样的情况,它会返回TRUE:(1..5).overlaps?(5..9)
=> true
如果我比较一个预订在另一个预订结束时刚好开始的情况(
3:30 - 4:00
对比4:00 - 4:30
),它会说它们重叠,但从技术上讲它们实际上不重叠。那将是一个问题,对吗?看起来ValidatesOverlap可以解决这个问题,包括边缘重叠。
有什么建议吗?