Rails根据sql数据库类型查找

Rails根据sql数据库类型查找,sql,mysql,ruby-on-rails,sqlite,activerecord,Sql,Mysql,Ruby On Rails,Sqlite,Activerecord,所以在rails中,我使用sqlite3进行开发,使用mysql进行生产。Sqlite3和mysql处理布尔值的方式不同(“Sqlite3中的“t”或“f”,mysql中的“true”或“false”)。通常我在查找时不会遇到问题,因为我可以这样做: Comment.find(:all, :conditions => ["viewed = ?", false]) rails将根据环境插入适当的值。但是,如果我想执行一个find_by__sql,其中需要一个布尔值,该怎么办 你真走运#在传

所以在rails中,我使用sqlite3进行开发,使用mysql进行生产。Sqlite3和mysql处理布尔值的方式不同(“Sqlite3中的“t”或“f”,mysql中的“true”或“false”)。通常我在查找时不会遇到问题,因为我可以这样做:

Comment.find(:all, :conditions => ["viewed = ?", false])
rails将根据环境插入适当的值。但是,如果我想执行一个find_by__sql,其中需要一个布尔值,该怎么办

你真走运#在传递数组时,find_by_sql还会执行与数据库无关的字符串替换

Comment.find_by_sql(["SELECT * FROM comments WHERE viewed = ?",  false])

啊。。。我是弱智,我想我应该在发布这个问题之前尝试一下。