从模型中选择对Model方法作出响应的所有对象

时间:2016-02-09 18:36:29

标签: ruby-on-rails ruby-on-rails-4

让我们说我有一个名为Game的模型。

该模型有两个字段,start_date(timestamp)和time_limit(integer)

我想选择所有对象,它将返回以下语句:

resultList.Where(x => filterProjects.Any(fp => x.Projects.Contains(fp)))

我设法获得start_date现在大于时间的所有对象,但这不是我想要的。

start_date + time_limit.minutes > Time.now

我该怎么做?

2 个答案:

答案 0 :(得分:1)

<强>的PostgreSQL

Game.where("start_date > now() - time_limit * interval '1 MINUTE'")

答案 1 :(得分:-1)

作为start_date + time_limit.minutes > Time.now,这是一个简单的不等式,你也可以写成:start_date > Time.now - time_limit.minutes

所以你的查询应该是:

Game.where(["start_date > ?", Time.now - time_limit.minutes])

✌️