2013-07-11 100 views
0

嗨,軌道4。凡嵌套模式搜索

我有用戶的模式和產品的型號。 我的模型產品belongs_to我的模型用戶和用戶has_many產品。

我的問題是我如何搜索1個或多個產品匹配用戶屬性?

爲例:Product.where(price: 10) for user.where(id: 2)

什麼是嵌套模式的搜索解決方案,我是有點失落。 非常感謝

回答

0

由於產品屬於用戶(和用戶的has_many產品),可以查詢過的關係:

user = User.find(2) 
products = user.products.where(price: 10) 
+0

好,但它的工作只爲一個用戶。 如果我說 '使用者= User.where(開心:真) 產品= users.products.where(價格:10)' 我收到了 'NoMethodError:未定義的方法' –

+0

好,我找到了解決辦法: 'users = User.where(happy:true) products = users.map {| u | u.products.where(price:10)}' –