搜索两个日期之间的记录 - Ruby on Rails

时间:2015-03-05 21:09:59

标签: ruby-on-rails ruby activerecord

我正在尝试创建一个在两个日期(今天和未来日期)之间返回记录的搜索。

如果我在我的模型中使用以下代码(film.rb),我可以让它返回几条记录没问题:

def self.date_search(search_string)
    self.where("release_date >= ?", search_string  )

但是,当我尝试以下内容时,会收到语法错误:

    def self.date_search(search_string)
       date = Date.today
       self.where("release_date = created_at > date.strftime("%F") AND created_at < ?  ", search_string  )

我仍然是Ruby的新手,所以任何帮助整理我的语法和代码都会非常感激。

1 个答案:

答案 0 :(得分:1)

尝试:

def self.date_search(search_string)
  self.where({release_date: Time.now..search_string})
end

这将为您提供release_date介于当前时间和search_string之间的条目(包括搜索字符串,因为您使用两个点(..),如果您使用三个点(...),它将排除搜索字符串。 。)