我在我的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
我知道日期应该是日期=?,但我不太清楚。
答案 0 :(得分:0)
任何人都可以给你的唯一正确答案是你必须在开发中使用PostgreSQL,因为你在生产中使用PostgreSQL。只要您的开发数据库与生产数据库如此不同,您将继续遇到问题。如果您在Mac上进行开发,请尝试安装Postgres.app,只需点击一下即可。将pg
gem添加到您的Gemfile中,您应该全部设置。