Многократный запрос соединения в области / named_scope - PullRequest
0 голосов
/ 13 мая 2011

Можно ли создать named_scope из следующего запроса:

SELECT g.*, b.*
FROM users u 
LEFT JOIN band_users bu ON u.id = bu.uid 
LEFT JOIN bands b ON bu.bid = b.id 
LEFT JOIN bands_gigs bg ON b.id = bg.bid 
LEFT JOIN gigs g ON bg.gid = g.id
WHERE u.id = 1

Я изо всех сил пытаюсь это сделать, возможно ли представить несколько: объединения в области named_scope или rails 3?

Спасибо

1 Ответ

1 голос
/ 13 мая 2011

Да, это можно сделать с помощью:

class Band < ActiveRecord::Base
  has_and_belongs_to_many :gigs

  ...
end

class User < ActiveRecord::Base
  has_and_belongs_to_many :bands

  scope :my_scope, joins(:bands => :gigs)
  ...
end
...