我有三個表,Show
,Episode
和Character
。每個顯示has_many節目和字符。在嵌套連接表上調用uniq
class Show < ActiveRecord::Base
has_many :episodes
has_many :characters
class Episode < ActiveRecord::Base
belongs_to :show
class Character < ActiveRecord::Base
belongs_to :show
情節有屬性:air_date
和:episode_number
。顯示有一個屬性:title
。
我有一個字符列表@characters
。我想要完成的是打印與這些角色相關的節目列表,由節目第二集的播出日期排序。
<% @characters.includes(show: :episodes).where(episodes: {episode_number: 2}).order('episodes.air_date DESC').each do |character| %>
<%= character.show.title %>
<% end %>
這幾乎工作,但一些節目有多個字符,所以在打印列表中,一些節目被多次列出。
是否有可能將紅寶石方法uniq
應用於查詢中的Shows表,以便每個Show最多打印一次?