2014-03-28 42 views
0

在我的Rails應用中,我有一個產品類別。每個產品可以有多個視頻(來自Youtube或VIMO)。在Rails應用中顯示多個視頻中的產品的一個視頻

我已經生成一個模型和遷移與下面的列

:title, :description, :video_link, :product_id 

我想展示產品展示頁面上只有一個視頻作爲主要或主視頻和「關於產品的詳細信息」,其餘的視頻頁。

/product.rb

has_many :video_links, dependent: :destroy 

/video_link.rb

belongs_to :product 

所以我的問題是,我應該如何處理標記一個視頻顯示產品頭版(視圖)和上其他視頻的詳細信息頁面?

回答

1

我應該如何標記一個視頻才能在產品首頁(視圖)上顯示以及其他視頻的詳細信息頁面?

這取決於你想要的「首頁視頻」的含義。

  • 編輯決定:爲'精選'或'首頁'添加一個布爾列,讓編輯決策者隨意翻轉那面旗幟。您可以使用其他代碼使其具有唯一性,或者添加日期並獲取最新的特色視頻。
  • 最熱門視頻:跟蹤每個視頻的觀看次數或投票數,並在頭版顯示最新的觀看次數/投票次數。
  • 最新視頻:添加updated_at列,並選擇最大價值的視頻。

換句話說,它看起來像在這個階段,這是一個設計,而不是編碼問題。

+0

謝謝森。您的第一個評論。我希望製造商/管理者可以決定選擇哪一個作爲主要的一個。我的問題是如何讓一個視頻的主要內容之一? –

+1

@SubratRout,我們通過採用最新更新的標記記錄來完成。例如。 'Product.video_links.where(featured:true).order(:updated_at).last'。所以在你的情況下,你需要添加'featured'和'updated_at'兩列。或者,在您爲某條記錄翻動'featured'時,您也可以將其翻轉以記錄所有其他記錄。 – Mori

1

您可以在「video_links」表格上有一個類似「main_video」的列,它是一個布爾值,只需要顯示一個列,就可以隨時獲取一列。

+0

謝謝。我的問題是,如果製造商或管理員將視頻鏈接上傳到產品,那麼他/她如何選擇只顯示一個爲主要視圖。我的意思是我在哪裏以及如何放置這個約束? –