I have an ActiveRecord question... I have a legacy MySQL database with a weird naming convention - all table and column names have a prefix ''_'' , which is annoying, and some of the column names are plain misnomers. I would like to apply a pre-defined mapping between MySQL column names and method names to be used in the Ruby class, without having the underlying column names being visible anymore. How can I pre-define a static mapping of all (legacy) column names to new Class method names? e.g.: given legacy schema: Table _fix has columns: _job _ change _date _effect When defining the Ruby class, I''d like to do something like this: class Fix < ActiveRecord::Base self.table_name = "_fix" use_mapping ( # imaginary construct.. :_job => "job_id", :_change => "change_id" , :_date => "date" , :_effect => "status") self.primary_key = "job_id" # no more reference to _job column end and want to access it like this: Fix.find( id ).status = "partial fix" # should update the column _effect in table _fix # and i want to see this :-) Fix.find( id )._job NoMethodError: undefined method ''_job'' for ... Fix.find( id )._effect NoMethodError: undefined method ''_effect'' for ... The schema of the underlying legacy database should not be modified in any way. Is there a way to do this? Is there a way to code a helper method for ActiveRecord::Base which does the above mapping? thanks Tilo --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---