簡體   English   中英

根據父模型從子模型中僅選擇一行

[英]Selecting only one row from child model based upon the parent model

以下是兩個模型之間的關聯:

class FotoGossip < ActiveRecord::Base
   has_many :uploads
end

class Upload < ActiveRecord::Base
   belongs_to :foto_gossip
end

@latest_uploads = Upload.all(:include => :foto_gossip, :order => "created_at DESC", :limit => 5)  

它顯示上傳模型中的最新5張照片。
但是,我想顯示上載的5張圖像,order_by created_date DESC,但每個FotoGossip僅顯示1張圖像。
就像將最近的FotoGossip與上載模型中的一張照片分組一樣。

我認為您可以像這樣使用ActiveRecord :: Base#calculate

@latest = Update.maximun(:creted_at,:distinct=>:foto_gossip_id)

接下來的AR查詢解決了該問題。

@latest_uploads = Upload.all(:include => :foto_gossip, :order => "created_at DESC", :limit => 5, :group => :foto_gossip_id)

魔術在於:group選項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM