浏览 4390 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-12-28
class Animal<ActiveRecord::Base has_and_belongs_to_many : xxx has_many : xxx belong_to : xxx end class Horse < Animal end class Pig < Animal end class Sheep < Animal end ...... 试了一下,好像不行阿。Horse/Pig/Sheep三个类必须继承自ActiveRecord::Base才能正常使用。但我又不想把各个关系都在这几个子类里写一遍。能实现么? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-12-28
Agile Web Development with Rails第二版,第19章。
|
|
返回顶楼 | |
发表时间:2006-12-28
Rails实现的是单表继承,所有子类共用一个表。所以如果你的问题是每个子类用不同的表的话,那么Rails不支持,要想别的办法。
其次,你举的例子里,子类的属性和关系完全一样,完全可以用单表继承,没有必要分表。 |
|
返回顶楼 | |
发表时间:2006-12-28
BirdGu 写道 Rails实现的是单表继承,所有子类共用一个表。所以如果你的问题是每个子类用不同的表的话,那么Rails不支持,要想别的办法。
其次,你举的例子里,子类的属性和关系完全一样,完全可以用单表继承,没有必要分表。 不完全对。Rails 1.2支持另一种异构对象聚合技术:多态关联。参考Agile Web Development with Rails第二版第18章(前面说错了,第19章是关于模型对象生命周期的)。 |
|
返回顶楼 | |
发表时间:2006-12-28
对啊,一翻到第19章,就发现不是一回事。多谢二位。我回头把书好好看看再。
|
|
返回顶楼 | |
发表时间:2007-08-10
关于多表继承,能否给一个例子。还有第二版的第18章是讲Controller的,是不是第17.2节Aggregation呢。
|
|
返回顶楼 | |