0

次のような訪問モデルがあります

class Visit < ActiveRecord::Base
  belongs_to :engineer
  has_many :machines
end

私がやろうとしているのは、次のコードを使用して、特定のエンジニアに関連付けられているマシンの数を見つけることです

count = engineer.visits.map(&:machines).flatten.size

これを行うためのより良い、より速い方法はありますか?エンジニアと機械の間に直接的な関係を作りたくありません。

4

1 に答える 1

0

join、includesなどのモデル キーワードを使用してクエリを実行できます。モデルから 1 つのレコードを選択するとき。

ご参考までにhttp://archives.ryandaigle.com/articles/2008/7/7/what-s-new-in-edge-rails-easy-join-table-conditionshttp://railscasts.com/episodes /202-active-record-queries-in-rails-3

于 2012-08-28T07:51:38.543 に答える