我现在有一个 user table,通过一个字段,想 分为 AUser 和 BUser,怎么做?
单表继承不行吗?搞个父类
另一个继承了 AR 的类里面手动设置表名
see my blog: http://michael-roshen.iteye.com/blog/2119766
#1 楼 @5swords 不想整继承,这两个类的关系基本没有。
#4 楼 @leeqiang 那为什么用一个表?
#5 楼 @Rei 只是重复的字段比较多,想弄到一起去。
#2 楼 @ywjno 我试过了,class 内设置 table name,然后设置一下 default scope 可以使用,但是创建的时候还需要 after_initialize 设置默认字段的内容。满足了,就是想问问大家有没有更加简单直接的方法,搞定这件事
技术上,两个模型共用一个表,就是用继承实现。而且可以不是一个继承另一个,还可以两个继承一个虚基类。
但根据我的经验,有共用一个表需求的模型,很可能用一个模型就够了,继承会带来很多麻烦。
#8 楼 @Rei 好的,我去好好想想能不能做成一个类,谢谢你的指导
#1 楼 @5swords #2 楼 @ywjno #3 楼 @michael_roshen #8 楼 @Rei 非常感谢大家的建议,谢谢
self.table_name = "xxoo"
#8 楼 @Rei 那也就是说,我直接个给 model 添加比较多的 attribute 咯?(A 有或者 B 有的都加上去?)
#12 楼 @cqcn1991 如果两个 model 只差一个字段。