2015-04-23 95 views
0

我有这些模型:左与导轨加入4

节有多个问题

问题已经一个答案

一个答案属于一个用户和一个问题

所以我想请求指定的用户,所有链接的问题部分等链接答案即使没有答案

Section.joins(questions: :answer).where(answers: { user_id: USER_ID }) 

将只返回有回答问题的部分。

Section.joins(questions: :answer).where(answers: { user_id: USER_ID }) 

这不起作用:

Section.joins(:questions).includes(questions: :answer).where(answers: { user_id: USER_ID }) 

感谢所有帮助

回答

1

你将不得不写左边加入自己。

Section.joins("left join questions on questions.section_id = sections.id") 
    .joins("left join answers on answers.question_id = questions.id") 
+0

我明白了...... 我要去分裂马请求。 – bokzor

+0

它不适合我。只返回有问题的记录。 –