To get all the ActiveRecord goodies your class must inherit from ActiveRecord::Base
:
class Post < ActiveRecord::Base
Why not ask the user to include
ActiveRecord as a module instead?
The advantage of this approach is that Rails could automatically include ActiveRecord in all classes in the models directory, making it completely transparent to the user. I.e.:
class Post # no `< ActiveRecord::Base`!
Is this a (relatively minor) design flaw in Rails?