У меня есть три модели: ImpactEvaluation, Site, MvPlan.Как запросить двойной вложенный ресурс в рельсах
ImpactEvaluation has_many Sites
Site has_one MvPlan
В одной строке кода в моей модели ImpactEvaluation, я хочу, чтобы иметь возможность запросить все MvPlans, которые подпадают под этой единой оценки воздействия. Это означает, что он должен будет проверить все сайты под этой оценкой воздействия, а затем все MvPlans с одним и тем же идентификатором сайта. что является самым элегантным способом запроса этого в синтаксисе рельсов?
Я попытался сделать решение, размещенное здесь: Rails Active Record Query for Double Nested Joins with a Select Call, но оно не работает. Я пытаюсь выполнить эти команды в моей консоли.
> mv_plans_id = []
> Site.where(impact_evaluation_id: 4).mv_plans.collect{|u| mv_plans_id << u.id} puts mv_plans_id
> SyntaxError: (irb):16: syntax error, unexpected tIDENTIFIER, expecting $end
должно быть has_many, хотя на каждом сайте есть только один mv_plan? каждая оценка воздействия технически имеет много планов mv, потому что у каждого есть несколько сайтов ... unsure об этом – MoB
Похоже, ваш ответ работает отлично. Спасибо. – MoB