感谢您在我最近的Rails应用程序中的持续支持。我已经在Rails中做了一段时间,所以这是我最新的问题。我感谢你们过去给予的帮助。
我有一个名为Event.rb的模型,其中包含日期:日期和时间:事件的时间字段。
我在模型中也有一个方法是..
def begins
DateTime.new(date.year, date.month, date.day, time.hour, time.min, time.sec)
end
因为我无法看到某些东西是否真正通过,因为我只将日期和时间分开,所以我需要它们一起。
我的问题是......
我希望能够添加DateTime:在我的模型中开始使用以下其他方法...
def self.past
where("date <= ?", TIME_NOW)
end
就像我有一个方法......
def upcoming?
self.date >= Time.now
end
我可以很容易地将self.date改为开始并将过去我想象的?
谢谢!
答案 0 :(得分:1)
也许这样的内容可用于使用您现有的date
和time
列查询数据库中的过去事件:
scope :past, lambda {
where("date <= ? and time <= ?",
Time.now.strftime("%Y-%d-%m"),
Time.now.strftime("%H:%M:%S")
)
}
past_events = Event.past
要检查当前实例,您可以继续使用begins
方法:
def past?
begins < DateTime.now
end
@event = Event.first
@event.past?