我想知道是否可以对从模型中获取的数据进行查询,而无需创建数据库查询。
让用户模型具有类型A和B
@users = User.where('created_at > ?', Time.now - 1.day)
type_a = @users.where(:type => A).limit(100)
type_b = @users.where(:type => B).limit(10)
当前,它正在执行2个查询。但是我想运行一个查询来获取数据,然后从中提取type_a和type_b。 还有其他方法可以做到这一点。
答案 0 :(得分:0)
可以通过选择方法
@users = User.where('created_at > ?', Time.now - 1.day)
type_a = @users.select {|u| u.type == 'A'}.first(100)
type_b = @users.select {|u| u.type == 'B'}.first(10)