我在文档中看到,在ROR 3.2中,通常最好在模型中使用范围方法来检索带有参数的记录而不是lamda范围
使用类方法是接受参数的首选方法 范围。这些方法仍然可以在协会上访问 对象
但是什么时候使用动态查找器(例如find_by_ *而不是范围和范围方法?动态查找器也可以接收参数,它们似乎更容易直接从视图中使用。
如果我想要检索所有
的记录 attribute1 == [boolean] AND attribute2 IN [array]
哪种方法是可取的(范围,范围方法或动态查找器?)
答案 0 :(得分:0)
类似的东西:
class Dog < ActiveRecord::Base
attr_accessible :chewed, :color
def self.toys chewed = false, colors = []
where chewed: chewed, color: colors
end
end