2011-12-06 59 views
1

我想存儲星期一到星期天,目前我正在使用smallint,但我想知道在我的模型中如何表示這種最佳方式?基本上,我想能夠顯示單詞「星期一 - >星期日」,但意識到這不是將其存儲在數據庫中的最明智的方式。我應該只使用關聯數組嗎?如何將星期幾存儲在rails中?

+0

我會使用關聯數組。 – Blender

+0

[Ruby:如何存儲和顯示星期幾?]的可能重複?(http://stackoverflow.com/questions/6590364/ruby-how-to-store-and-display-a-day-of-星期) – Mischa

回答

2

確實有很多方法可以做到這一點。如果你總是要存儲連續的日子,那麼表示開始和結束日期(1-7的索引)的兩個單獨的數據庫列將是有序的(具有從日期索引到文本名稱的翻譯方法)。

這可能適合您的情況,但是,我發現更多的時候您需要插入多個非連續日子的靈活性。我最近使用的一種方法(儘量減少SQL查詢)是簡單地將7個布爾數據庫字段添加到代表Sun-Mon的表中。這將允許您使用@ event.monday等方法?一個輔助方法可以將連續的日子包括在一起用於顯示目的。