1

我正在向我的 rails 应用程序添加一个搜索栏。它可以完美地查找文本,但我也想搜索我的“日期”字段,它是一个整数。我确信对此有一个简单的答案,但我在网上到处都看过,无法弄清楚。我在本地运行 MySQL,它工作正常,因为数据库正在将“日期”转换为字符串。当我推送到 Heroku 时它会中断,因为 PG 数据库想要搜索一个整数。这是我的代码,它在 MySQL 上完美运行:

def self.search(search)
  if search
    losearch = search.downcase
    find(:all, :conditions => ['lower(description) LIKE ? OR lower(artist) LIKE ? OR     lower(album) LIKE ? OR lower(date) LIKE ?', "%#{search.downcase}%", "%#{search.downcase}%", "%#{search.downcase}%", "%#{search.downcase}%"], order: "created_at desc")
  else
    find(:all, order: "created_at desc")
  end
end    

我知道日期应该类似于 date = ?,但我不太清楚。

4

1 回答 1

0

任何人都可以给您的唯一正确答案是您必须在开发中使用 PostgreSQL,因为您在生产中使用 PostgreSQL。只要您的开发数据库与生产数据库如此不同,您就会继续遇到问题。如果您在 Mac 上开发,请尝试安装Postgres.app,一键完成。将pggem 添加到您的 Gemfile 中,您应该一切就绪。

于 2014-02-08T20:11:42.327 回答