アクセス値has_manyを通して結合テーブル
-
20-09-2019 - |
質問
私には利用者の会員団体を通じて会員参加テーブルは、属性の参加表"管理者"です。ようにしているかチェック内のグループの一員、ループを通じて各メンバーがいます。
のんの
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
所属していません StackOverflow