0

我有一个名为的特定字段的模型结束。 这些都是日期我想,以检查针对当前日期(Time.now)来得到仅在当前时间由存储的值查找对Time.now的模型记录

开始端之间我想这样一些事情

记录
Model.all.find_by(start: <Time.now , end: >Time.now) 

但我总是得到语法错误。有时第二个日期的字段名称(结尾)甚至与我的控制器中的“结束”关键字混淆在一起。

+0

您需要做的第一件事是将您的结束列的名称更改为finish或end_dt或结束以外的内容。如果你继续使用结尾,疯狂将是你的现实。 – Sixty4Bit

回答

2

你可以尝试这样的事情:

Model.where('start < ? and end > ?', Time.now, Time.now) 

顺便说一句,all是在这种情况下是多余的。

+0

使用find_by实际上会在我的视图文件中返回一个有趣的错误:'undefinded method each ..'。但是Model.where('start < ? and end >?',Time.now,Time.now)似乎很完美!谢谢 – Maxence

+1

@Maxence:'find_by'返回一个对象,而'where'返回一个集合。 – potashin