0

私のアプリケーションでは、私が使用しています

phy = Physician.find(:all, :include => {:clinician_affiliations => :provider_organization}, :with_disabled => true).select{|physician| not physician.provider_organizations.blank? }.collect{|enum| [enum.display_name_schedule, enum.id]}

コード。コードを実行すると、N + 1回実行されます。これは Rails の N+1 クエリの問題だと思います。N+1 なしでこのコードを単純化する必要があります。

注:clinician_affiliation は provider_organization に属しています。(私は Rails 2.3 を使用しています)

class Clinician
.....
has_many :provider_organizations, :through => :clinician_affiliations
...
end

DB Physician および Provider_organizations から、パーティ テーブルのタイプがあります。

クラス 医師 < 臨床医

4

1 に答える 1