如何避免Rails ActiveRecord子类中的属性重新声明?

时间:2013-04-24 00:08:46

标签: ruby-on-rails inheritance activerecord

给出以下代码:

class BaseType < ActiveRecord::Base
  attr_accessible :a, :type
end

class SubType < BaseType
  attr_accessible :b
end

我希望a中可以访问属性BaseTypea可以访问属性bSubType,而无需声明{ {1}}再次{1}}。单表继承在这种情况下没有帮助,或者至少我无法弄明白。还可以应用哪些其他解决方案?

更新

在来自timpone的评论之后,这就是我测试上面代码的方式:

通过以下方式创建模型:

a

将sub_type.rb中的超类从SubType更改为rails g model BaseType a:string type:string rails g model SubType b:string 。迁移后,我尝试在rails控制台中创建一个新的SubType实例,并出现以下错误:

ActiveRecord::Base

为什么会这样?

0 个答案:

没有答案