gpt4 book ai didi

ruby-on-rails - 在 Ruby 中处理无限日期(永远持续的事件)的正确方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-03 16:50:59 24 4
gpt4 key购买 nike

在我的项目中,我处理事件以及与它们相关的一些数据,每个事件都有它的 start_dateend_date。然而,一些事件无限期地持续并且具有 nilend_date,稍后用户可以将 end_date 设置为某个实际值,但同时它们应该被处理就像它们永远不会结束。

我发现使用 Range 处理周期非常方便,因此模型如下所示:

class Event < ...
# ...

def period
start_date .. (end_date || Date::Infinity.new)
end
end

此代码在大多数情况下都运行良好,例如:

period.include?(Time.zone.today)
# or
Time.zone.today > period.max

但是 Date::Infinity 本身仅供内部使用。所以我想知道使用无限期的最佳做法是什么,是否有任何图书馆可以帮助解决这个问题?

最佳答案

如果您因为重复需要一个无限值,您可能想尝试专门为处理事件重复而制作的 gem 之一:

关于ruby-on-rails - 在 Ruby 中处理无限日期(永远持续的事件)的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22082830/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com