2011-11-27 75 views
0

我目前正在使用Ruby on Rails在運動卡網站的在線商店工作。在主頁的側邊欄中,我想從我的產品模型(我已經通過腳手架創建)隨機生成卡片。我會怎麼做呢?任何幫助將非常感激!從軌道模型生成隨機

+0

如果你想得到很好的答案,你必須比這更具體。你想選擇隨機產品? – Robin

+0

是的。抱歉。我的產品模型是由運動卡編制而成的,因爲它是一個運動卡網站,所以我期望生成隨機產品。 – TopChef

回答

1

你提的問題是非常通用的,所以我會做一些假設在這裏。 (1)我假設你可以將大部分產品裝入內存。 (2)隨機產品只需每幾小時更新一次。

首先寫的是選擇從你的模型部分產品隨機的方法:(也閱讀How do I pick randomly from an array?如何獲得隨機物品):

products = Products.find(:all) 
(1..5).each do |n| 
    selectedProduct = products[rand(myarray.length)] 
    selectedProduct.shouldAppearOnHomePage = true 
    selectedProduct.save 
end 

您可以運行此方法(可能/腳本/導軌EXEC)每隔一段時間。它會在新的隨機產品上設置shouldAppearOnHomePage。

然後,剩下要做的就是查詢shouldAppearOnHomePage爲true的數據庫並顯示這些產品。