优化使用collect的rails查询

时间:2014-01-12 02:54:56

标签: ruby-on-rails

我想优化我正在制作的查询以获取对象集合上的所有标记,但我需要帮助。目前使用collect收集所有标签,但查看日志,我看到基本上已经发出了500个调用,并希望查看单个查询是否可以执行此操作。

@answers = Answer.limit(500).sort_by(&:plusminus)
@tags =  @answers.collect {|answer| answer.tags}

1 个答案:

答案 0 :(得分:0)

使用join代替

Answer.joins(:tags).select('answers.some_field, tags.some_field')

它只会查询一次并返回一个数组或结果