2011-08-16 14 views
0

私はこれをしばらく理解しようとしてきましたが、はどれですか?単一の依存プロパティに基づいてすべてのプリンシパルを見つける方法たとえば、のは、私はこれらのモデルを持っているとしましょう:依存関係のプロパティに基づいてすべての1対1プリンシパルオブジェクトを見つける

class Principal < ActiveRecord::Base 
    has_one :dependent 
end 

class Dependent < ActiveRecord::Base 
    belongs_to :principal 

    attr_accessible :color 
end 

がどのように私はその扶養色の青を持っているすべてのプリンシパルを私に恩返しをするためにデータベースを照会することができますか?答えが同じでない場合は、範囲が必要な場合はどうなりますか(実際には色は数字で、従属番号が10-20の範囲内にあるすべてのプリンシパルが必要です)。ここで

が、私はこの問題に持っている最も近いソリューションです、私は確信しているそれはterribadです:事前に

principal_collection = Array.new 
Dependent.where(:color => 'blue').each do |d| 
    principal_collection << d.principal 
end 

感謝:)私は答えはそこにある場合に謝罪、私は探してみました。

答えて

0

多分あなたはこれを見つけるでしょうか?

Principal.includes(:dependent).where("dependents.color = ?", "blue") 
関連する問題