Ruby on rails 如何在Rails中实现类表继承?
我刚刚读完《使用Rails的敏捷Web开发》(AgileWeb Development with Rails,第四版()),需要一些帮助来理解如何在模型之间创建父子关系。我在这里搜索了一下StackOverflow,大致了解了单表继承和类表继承 我有一堆关于档案收藏中不同项目的元数据。大部分元数据对于所有对象都是相同的,例如,登录号、标题、描述、版权等。除了通用元数据外,还有一些元数据仅适用于某些类型的项目,例如,照片需要跟踪项目是彩色还是黑白;录音需要记录格式(CD、DAT、盒式磁带等)和持续时间;文本材料需要记录页数;等等Ruby on rails 如何在Rails中实现类表继承?,ruby-on-rails,class-table-inheritance,Ruby On Rails,Class Table Inheritance,我刚刚读完《使用Rails的敏捷Web开发》(AgileWeb Development with Rails,第四版()),需要一些帮助来理解如何在模型之间创建父子关系。我在这里搜索了一下StackOverflow,大致了解了单表继承和类表继承 我有一堆关于档案收藏中不同项目的元数据。大部分元数据对于所有对象都是相同的,例如,登录号、标题、描述、版权等。除了通用元数据外,还有一些元数据仅适用于某些类型的项目,例如,照片需要跟踪项目是彩色还是黑白;录音需要记录格式(CD、DAT、盒式磁带等)和持续
Class hierarchy
Item
|
+-----------+------------+
| | |
Photo SoundRecording Text
因为我将有数千条记录,所以我排除了单表继承太低效的可能性。我理解这里介绍的类表继承的思想:但是我不知道如何在一个新的RubyonRails项目中实现它。我是将类表继承实现为多态关联()还是走错了方向
谢谢。是的。
归结起来就是这样(在Rails 3中)
class业务true
结束
class餐厅
这里有一个关于如何做的很好的教程
有一个gem可以做到这一点,它还支持rails 5.1
谢谢,本教程与我所要的完全一样。
class Business < ActiveRecord::Base
belongs_to :biz, :polymorphic => true
end
class Restaurant < ActiveRecord::Base
acts_as_biz
end