0

私は単純な関係を持っています:

class Organization < ActiveRecord::Base
  belongs_to :parent_organization, class_name: 'Organization'
end

したがって、組織は、その親として機能する別の組織に関連付けることができます。

Organization現在親として機能しているすべてのインスタンスを返す方法を探しています。

基本的に、ID がOrganization#parent_organization_id列で参照されているすべての組織を効率的な方法で見つけるので、次のようなスコープを設定できます。

Organization.parent、親として機能するすべての組織を返します。

ありがとう、

ジョー

4

1 に答える 1

0

次のようなことができるはずです。

Organization.where("id in (?)", Organization.pluck(:parent_organization_id))

そして、それをスコープとして使用して、使用を容易にすることができます。

scope :parent, where("id in (?)", Organization.pluck(:parent_organization_id))
于 2013-03-28T19:52:38.583 に答える