У меня есть несколько родственных моделей: Category
has_many
Question
. Question
has_many
Answer
. Мне нужно:Активная запись получить родительские записи на основе дочерних данных
- Получить все категории, где по крайней мере один
Question
имеетAnswer
Графа все вопросы, что есть по крайней мере один
Answer
(сколько вопросов вCategory
есть ответы)Получить все Категории, в которых все вопросы имеют 0 ответов
- Подсчитайте все вопросы, у которых нет ответов (Сколько вопросов внутри
Category
, у которых нет ответов).
EDIT
Если я хочу получить список категорий с ответами и перечнем категорий без ответов?
cats = []
@categories_with_answers = Category.all.each do |cat|
cats << cat if cat.questions.joins(:answers).count > 0
end
Как я могу написать этот фрагмент более чистым способом?
Спасибо за помощь, как я могу получить результаты по 2 и 4 за каждую категорию? Мне нужно задавать вопросы с помощью одного ответа для каждой моей категории. И, также, мне нужно посчитать все вопросы без ответа для каждой моей категории. –
См. Мой обновленный ответ. –
Я обновляю свой вопрос, см. Пожалуйста –