ActiveRecord Abstract class

Hi, I was trying to create an abstract class and a subclass which inherit that abstract class.

However, seems like I cannot instantiate the subclass too. Below is my code:

//abstractclass2.rb class Abstractclass2 < ActiveRecord::Base         self.abstract_class = true end

//subclass.rb class Subclass < Abstractclass2 end

When I test drive it in rails console, I got the following error:

  from (irb):1irb(main):002:0> sb = Subclass.new ActiveRecord::StatementInvalid: Could not find table 'subclasses'   from /usr/lib/ruby/gems/1.8/gems/activerecord-3.1.3/lib/active_record/connection_adapters/sqlite_adapter.rb:439:in `table_structure'   from /usr/lib/ruby/gems/1.8/gems/activerecord-3.1.3/lib/active_record/connection_adapters/sqlite_adapter.rb:322:in `columns'

If I take out "self.abstract_class", everything works fine (subclass object is inserted into abstractclass table but abstractclass can be instantiated --> that's not what I want to...)

Did I miss something here so that I cannot instantiate the subclass?

Thanks, Kahou

When I test drive it in rails console, I got the following error:

from (irb):1irb(main):002:0> sb = Subclass.new ActiveRecord::StatementInvalid: Could not find table 'subclasses' from /usr/lib/ruby/gems/1.8/gems/activerecord-3.1.3/lib/active_record/connection _adapters/sqlite_adapter.rb:439:in `table_structure' from /usr/lib/ruby/gems/1.8/gems/activerecord-3.1.3/lib/active_record/connection _adapters/sqlite_adapter.rb:322:in `columns'

If I take out "self.abstract_class", everything works fine (subclass object is inserted into abstractclass table but abstractclass can be instantiated --> that's not what I want to...)

Did I miss something here so that I cannot instantiate the subclass?

In the setup you've described, rails expects the subclass to have its own table. If you don't want that, then don't set abstract_class to true

Fred