我想查找一種方法來查詢我的數據庫,以便爲所有匹配的記錄返回一個關聯的記錄。例如:active_record返回所有匹配的記錄對象的單個關聯記錄
如果一個用戶有很多房子(房子屬於一個用戶),並且我需要獲得所有的用戶,並且每個用戶都有一個關聯的房子(比如第一個房子)。我如何去做這件事?
要闡述更多關於這個:
user A has houses 1, 2, 3
user B has houses 4, 5, 6
user C has houses 7, 8, 9
- 讓所有的用戶,我可以這樣做:
user.all
- 得到一個用戶的所有房子,我可以這樣做:
<user>.houses
- 以獲得用戶與他們的房子,我可以加入查詢:
User.joins(:houses).where(<condition>)
但是,如果我想獲得的所有用戶,並與各房子,格式爲:
user | house
-----------------
A | 1
B | 4
C | 7
我怎麼能去呢?
該數據庫是postgres。
更新:
我真正的模型如下:
class Product < ActiveRecord::Base
...
has_many :product_pictures, :dependent => :destroy
accepts_nested_attributes_for :product_pictures, allow_destroy: true
end
您使用了哪個數據庫? –
@JaehyunShin psql,帶rails的postgress數據庫 –