【发布时间】:2011-10-18 00:38:00
【问题描述】:
首先,抱歉标题不好,无法提出更具描述性的内容。
我有一个用户模型。我想为该用户设置一个类型,它可以是 5 个选项之一;不管选项是什么,任何字符串都可以。我希望能够根据这些选项进行搜索。
我认为我有以下选择:
- 将字段作为字符串添加到带有索引的模型中
- 创建一个 user_type 表并做belongs_to/has_many 关系
- 将类型保存为整数并将整数映射到用户模型中定义的常量,带有字符串值(虽然不知道如何执行此操作)
解决此问题的 Rails 方式 将满足以下目标:
- 可搜索
- 可维护
- 可读
谢谢
【问题讨论】:
-
您是否考虑过使用single table inheritance,并通过下拉菜单输入用户的类型?
-
@Jimmy 感谢您的链接。从 cmets 看来,我的选择 2 是要走的路。我会试试的
标签: ruby-on-rails model associations