(Non-active Record) Models and inheritance

In 'MyValidatedModel' I also have needed to add the method

def self.human_attribute_name(attr)
   return @@atty_names[attr] || (attr.nil??attr:attr.humanize)
end

for the framework to return friendly names to 'error_messages_for',
and
have my field names and corresponding names in a class hash as per :

@@atty_names = {
   'username' => 'User Name',
   'email' => 'E-Mail Address',
   'firstname' =>'First Name',
   'lastname' => 'Last Name',
   'dob' => 'Date of Birth',
}

I wanted self.human_attribute_name(attr) to be in the module also, but
it wouldn't work there, so I am looking at model inheritance for
models
to achieve this.

The classic way of doing this is to have a ClassMethods module
containing the class methods you want to add.
You can then to base.extend(ClassMethods) from self.included (or since
from append_features since you're use that)

Fred