class ConferenceSession < ActiveRecord::Base
has_many :conference_sessions
end
class ConferenceSession < ActiveRecord::Base
belongs_to :conference
has_and_belongs_to_many :users
end
class User < ActiveRecord::Base
has_and_belongs_to_many :conference_sessions
end
和conference_sesssions_users表。管理員可以允許特定人員參加特定會話。所以我想要形成一個查詢,只要用戶登錄並選擇一個會議,他就應該只允許看到管理員允許他訪問的那些會話。基於條件的軌道關聯查詢
我做這個做
scope :visibility,
lambda { |user_id| joins('INNER JOIN conference_sessions_users
ON conference_sessions_users.conference_session_id = conference_sessions.id').
where('conference_sessions_users.user_id = ?', user_id) }
,以獲得特定的會話,但這個只返回特定的人,如果會話的所有用戶可見,如果條件是相同的什麼什麼。