【发布时间】:2014-07-22 02:31:12
【问题描述】:
我正试图围绕我应该如何为具有许多 has_one 关联 (20+) 的父模型的数据库建模。我有一个名为 House 的模型,它是所有其他模型的父模型:
class House < ActiveRecord::Base
has_one :kitchen
has_one :basement
has_one :garage
has_one :common_room
#... Many other child models
end
所有子模型都包含特定于它们自己的类的独特属性。我考虑过 STI,但实际上并没有任何可以跨模型使用的共享功能或输入。我也想过制作一个“超级模型”,但这并没有真正遵循 Rails 的最佳实践,而且它会包含 200 多列。是否有另一种设计模式或结构可以用来有效地建模,从而减少数据库调用?
【问题讨论】:
标签: ruby-on-rails database-design model