我正在编写一个有两个模型的应用程序:文档和需求。每个文档都有一个类型,并且根据该类型,还有许多要求。每个需求都有一个状态(完成或未完成)和描述。
问题是,文档类型和需求描述值是预定义的,每个可能的值都应该存储在动态集合中,以便用户可以扩展它们。
我想出的第一个解决方案是创建两个附加模型:DocumentType 和 ReqDescription,它们都只有一个名为 name 的属性和值本身。此外,两个模型都有自己的控制器来创建和销毁集合中的任何值,并且当应用程序启动时,它们将具有许多预定义的实例,因此与它们的所有者具有 has_many 关系(DocumentType 的 Document 和 ReqDescription 的 Requirement),他们将扮演动态集合的角色。
DocumentType < ActiveRecord::Base
has_many :Documents
...
end
Document < ActiveRecord::Base
belongs_to :DocumentType
end
ReqDescripcion < ActiveRecord::Base
has_many :Requirements
end
Requirement < ActiveRecord::Base
belongs_to :ReqDescription
end
有没有更好的方法来处理这个问题?像宝石什么的。