我们假设我有一个名为"产品"的模型.我们假设产品有三个字段.这些字段是'name'(类型字符串),'cost'(类型整数)和'is_visible'(类型bool).
1)如何使用Rails"查找"方法进行搜索查询(如果有其他方法,那很好),以便我可以搜索成本大于100且is_visible为真的所有产品?
2)如果我们想要改变它以搜索名称!=''OR cost == 0怎么办?
这不是一个SQL问题,但我想Rails有一种方法可以在不使用SQL的情况下对数据库进行AND/OR查询.
谢谢!
您需要在find方法上使用conditions选项.conditions选项可以是Hash,Array或String.条件有很多选项,所以我建议您阅读API帮助.例如,如果你想(1):
Product.find(:all, :conditions => ['cost > ? and is_visible is true', 100])
或(2)
Product.find(:all, :conditions => ["name != '' or cost =0])