2013-08-31 50 views
0

我有以下ActiveRecord模型關聯:如何鑽取多個在where子句中有多個/屬於關聯?

用戶有很多目標;目標有很多目標;目標有許多任務;任務有很多要求。

我正在構建一個API,我希望/api/requirements端點通過鑽取上面定義的關聯來返回特定用戶的所有需求。但是,我在編寫where子句時遇到了問題。這是我到目前爲止:

Requirement.where('tasks.objectives.goals.user_id = ?', user.id) 

雖然這並不起作用。我似乎無法通過關聯跳轉到user_id。

回答

1

你可以嘗試這樣的: - 。

Requirement.joins(:任務=> {:目標=>:目標}),其中( '?goals.user_id =',user.id)

+0

如果它真的幫助你,請回答這個問題 – techvineet

+0

謝謝!必須小心使用單數名詞作爲'連接詞',複數詞作'where'。 –