Freeze field in active record

Hello,

I have a freeze field in a table (that I can't change).
When I try to find a record in this table I have the exception :

    C:/DATA/InstantRails-2.0/ruby/lib/ruby/gems/1.8/gems/
activerecord-2.1.0/lib/active_record/attribute_methods.rb:104:in
`instance_method_already_implemented?'
    C:/DATA/InstantRails-2.0/ruby/lib/ruby/gems/1.8/gems/
activerecord-2.1.0/lib/active_record/attribute_methods.rb:72:in
`define_attribute_methods'
    C:/DATA/InstantRails-2.0/ruby/lib/ruby/gems/1.8/gems/
activerecord-2.1.0/lib/active_record/attribute_methods.rb:71:in `each'
    C:/DATA/InstantRails-2.0/ruby/lib/ruby/gems/1.8/gems/
activerecord-2.1.0/lib/active_record/attribute_methods.rb:71:in
`define_attribute_methods'
    C:/DATA/InstantRails-2.0/ruby/lib/ruby/gems/1.8/gems/
activerecord-2.1.0/lib/active_record/attribute_methods.rb:238:in
`method_missing'

any idea to avoid the problem?
Is it possible to change the name of the attribute in the active
record class ?

Many thanks!

Ruby objects already have a freeze method (it makes the object
immutable).

The easiest way out is probably to write your own accessor methods:

def some_other_name
  self[:freeze]
end

def some_other_name= value
  self[:freeze] = value
end

Fred

Thanks for the answer,
but the problem comes frome the freeze method,
It throws :

ActionView::TemplateError (freeze is defined by ActiveRecord) on line
#75 of promo_structural/_promo_v2.rhtml:

when I execute any access to my ActiveRecord, even to other attributes

Christophe

Thanks for the answer,
but the problem comes frome the freeze method,
It throws :

ActionView::TemplateError (freeze is defined by ActiveRecord) on line
#75 of promo_structural/_promo_v2.rhtml:

when I execute any access to my ActiveRecord, even to other attributes

Ah yes, that actually makes sense. I suppose you could use a select
option to select the column with another name (ie select foo as bar).
Can't think of another way out without hacking around with the
activerecord code (if I was going to do that I would change
raise DangerousAttributeError, "#{method_name} is defined by
ActiveRecord" if @@_defined_activerecord_methods.include?(method_name)
to
return true if @@_defined_activerecord_methods.include?(method_name)
(in attribute_methods.rb))

Fred