質問

私には利用者の会員団体を通じて会員参加テーブルは、属性の参加表"管理者"です。ようにしているかチェック内のグループの一員、ループを通じて各メンバーがいます。

のんの

for user in @group.users
  if user.administrator?
    ...DO STUFF
  end
end

またこのコントローラ:

@administrators = @group.memberships.find(:all, :conditions => ["administrator = 1"])

ができます。意思い?

更新量は以下の方法をユーザモデル

def is_administrator_of(group_id)
        Membership.find(:first, :conditions => ['user_id = ? AND group_id = ? AND administrator = ?', self[:id], group_id, true])
end
役に立ちましたか?

解決

はっき設定協会はそのために私ための最も簡単な方法はないので追加方法をお客様のユーザーモデルのチェックすることができ、各ユーザーはこではループでご利用いただけます。どうか分かりませんで下右それぞれが特色をもっています。少し早いスピードで変化しないを開始することができるように:

ユーザーモデル

def is_administrator_of(group_id)
    Membership.find(:first, :conditions => ['user_id = ? AND group_id = ?', self[:id], group_id]).administrator == 1
end

他のヒント

るものと思われるクリーナーをすることが

class Group < ActiveRecord::Base
  has_many :memberships
  has_many :users, :through => :memberships
  has_many :admins, :through => :memberships, :source => :user,
           :conditions => ['memberships.administrator = ?', true] 
end

しております。管理者リスト

for user in @group.admins
    ...DO STUFF
end
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top