2009-12-09 49 views
0

我有一個帳戶模型的應用程序。每個帳戶都屬於一項運動,我通常將其作爲體育模型和數據庫。但是,因爲這不是真的會改變,並且不由最終用戶管理,所以我認爲將它作爲Account模型中的整數列並使用類變量映射到哈希可能會更好。然而,我需要每項運動都有很多player_positions(這是每項運動所特有的)。所以我想也許我可以做這樣的事情:將非db數據映射到導軌模型

@@player_positions = {:rugby => [position_1, ..., ...]} 

對於像這樣或靜態數據,這個好習慣,我應該堅持把它在DB,因爲它是關係?

我也想過也許我可以使用yaml文件,但不知道如何設置它。

回答

0

我會堅持在數據庫中,因爲你在運動中涉及多個事物(除Account之外的職位)。如果你想使用belongs_to,它會讓生活更輕鬆,並且它可以讓你輕鬆地使用SQL進行計數等等(例如,你可以按體育分組賬戶並按體育計算賬戶數)。

我在某些情況下使用了枚舉的常量列表,而不是表格。例如,我有一個用戶類型爲ADMIN,EDITOR和READER的簡單應用程序。我沒有將它放在數據庫的角色表中,而是在User類上創建了這些常量,並在用戶表中爲角色添加了一個字符串列。

+0

是的,這是我的直覺,因爲我認爲可能還有更多事情需要與Accoutn和Sport相關 – Cameron 2009-12-09 17:21:04