2009-12-09 48 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