У меня есть три объекта (List, ListType and GlobalList)
, и я пытаюсь получить количество элементов в GlobalList с конкретным global_id и конкретным list_type_id.
Это похоже на работу:
select count(*) from globals_lists gl, lists l where gl.global_id=946 and gl.list_id=l.id and l.list_type_id=10;
Структура выглядит следующим образом:
class ListType < ActiveRecord::Base
has_many: lists
end
class List < ActiveRecord::Base
has_many :global_lists
belongs_to :list_type
end
class GlobalList < ActiveRecord::Base
belongs_to :list
end
Не уверен, как сделать вызов AR - на этот раз, но может показаться, что в месте соединения. list_type_id
всегда будет 10
.
a=GlobalList.where("global_id=?",119).joins(:list)
Как бы я сделал этот вызов ActiveRecord? Большая часть материала, который я нашел через Google, касалась именованных областей, но, похоже, это можно было бы сделать без областей.