私はいくつかのアカウントとユーザを持っています。複雑なhas_many関係とRails
私は、ユーザーが管理者、編集者、または任意の(そして多くの)アカウントにできる必要があります。現時点で
は、私はこれを持っている:
has_many :memberships, :dependent => :destroy
has_many :administrators, :through => :memberships, :source => :user, :conditions => {'memberships.is_admin' => true}
has_many :editors, :through => :memberships, :source => :user, :conditions => {'memberships.is_editor' => true}
account.rb
user.rb
has_many :memberships
has_many :accounts, :through => :memberships
has_many :editor_accounts, :through => :memberships, :source => :account, :conditions => {'memberships.is_editor' => true}
has_many :administrator_accounts, :through => :memberships, :source => :account, :conditions => {'memberships.is_admin' => true}
は基本的に、私はacheiveしようとしていることの素敵な簡単な方法であります素敵なシンプルな方法でこれをモデリングしています。
@account.administrators << current_user
current_user.adminstrator_accounts = [..]
など
':条件=> 'memberships.is_admin' => true'を=> 'に変換する:条件=> [ '?memberships.is_admin ='、真]' – fl00r