Я пытаюсь сделать что-то вроде
class Event < ActiveRecord::Base
has_many :links, :dependent => :destroy
belongs_to :activity
belongs_to :facility
has_many :infos, :through => :activity
has_many :infos, :through => :facility
accepts_nested_attributes_for :infos
end
Но это приводит к has_many :infos, :through => :facility
, в то время как has_many :infos, :through => :activity
игнорируется.
Как я могу выразить это в правильном синтаксисе?
РЕДАКТИРОВАТЬ:
Если я реализую метод Влада и затем использую
@ events = Event.all (: include => [: facility_infos,: activity_infos],: условие => ["infos.language_id =?", 2],: order =>: время)
я получаю :activity_infos
для language_id == 2, но, к сожалению, я получаю:facility_infos
для всех языков!Как решить эту проблему?
РЕДАКТИРОВАТЬ 2:
Вот вывод, который вы запросили:
ВЫБРАТЬ "события". "Id" AS t0_r0, "события "." время "AS t0_r1," события "." каждый день "AS t0_r2," события "." activity_id "AS t0_r3," события "." созданный_at "AS t0_r4," события "." updated_at "AS t0_r5,"events "." facility_id "AS t0_r6," events "." home "AS t0_r7," информация "." id "AS t1_r0," информация "." title "AS t1_r1," информация "." описание "AS t1_r2,"информация "." местоположение "AS t1_r3," информация "." language_id "AS t1_r4," информация "." made_at "AS t1_r5," информация "." updated_at "AS t1_r6," информация "." Activity_id "AS t1_r7,"информация "." Facility_id "AS t1_r8," информация "." service_id "AS t1_r9," activity_infos_events "." id "AS t2_r0," activity_infos_events "." title "AS t2_r1," activity_infos_events "." описание "AS" t__activity_infos_events "." location "AS t2_r3," activity_infos_events "." language_id "AS t2_r4," activity_infos_events "." созданный_at "AS t2_r5," activity_infos_events "." updated_at "AS t2_r6, Activity_in_in_in_ Activity_e_in_in_ Activity_e_in_in_ Activity"id "AS t2_r7," activity_infos_events "." facility_id "AS t2_r8," activity_infos_events "." service_id "AS t2_r9 FROM" события "LEFT OUTER JOIN" объекты "ON" события "." facility_id "=" средства "." id "СЛЕДУЮЩЕЕ НАРУЖНОЕ СОЕДИНЕНИЕ "infos" ON "infos". "Ознание "=" средства "." Id "СЛЕДУЮЩЕЕ ОБЪЕДИНЕНИЕ" деятельностей "ВКЛ" события "." Activity_id "=" деятельностей "." Id "СЛЕДУЮЩЕЕ СОЕДИНЕНИЕ ВНУТРИ" infos ""activity_infos_events" ON "activity_infos_events". "activity_id" = "Activities". "id" ГДЕ (infos.language_id = 2) ЗАКАЗАТЬ ПО времени