0
的最後一個孩子的領域尋找和我有嵌套模型,如(使用PostgreSQL的)Rails的,嵌套的has_many協會,各
class User
has_many :pages
end
class Page
has_many :details
belongs_to :user
end
class Detail
belongs_to :page
#It has a column named "count"
end
我需要的是說 用戶使用id = 1,它有很多的網頁與ids = 1,2,3。這些帶有ID(1,2,3)的頁面有很多細節。 我需要的是讓每個頁面的最新細節,並從這些最新的細節
我在現在做什麼名爲「計數」字段的總和
page_ids = current_user.pages.pluck(:id)
last_followers = Detail.select("DISTINCT ON(page_id) *").where(page_id: page_ids).order("page_id, created_at DESC")
last_followers.each { |detail| last_sum += detail.counts }
但事實並非如此看起來不錯,找到page_ids,而不是細節,並循環遍歷所有這些。
有沒有像單一的查詢直接的方式,感謝
謝謝,那是我所需要的總和。 但是你的查詢將要做的是,如果用戶說20頁而不是打到數據庫20次,我想避免。 –