validate_on_update compare old value to new value

Hello, After a model has been saved I want to prevent some of it's fields from being updated. I was going to do this by overriding validate_on_update but I don't know how to access the old value to compare it to the new value. Cheers, Ewan

ewanmcdougall@googlemail.com wrote:

Hello, After a model has been saved I want to prevent some of it's fields from being updated. I was going to do this by overriding validate_on_update but I don't know how to access the old value to compare it to the new value. Cheers, Ewan   

How about overriding the setter methods for those fields you want to lock. Something like...

def title=(t)    self[:title] = t if self.new_record? end

Hello Jon, Thanks for the reply. I made the attribute read only doing

attr_readonly :title

Ewan