Sometimes we need to run some logic before updating attribute.
To do so - we can overwrite object.name= method like this:
class Cosik < ActiveRecord::Base def name=(str) # Doing some stuff param.downcase.gsub(/[^a-zA-Z 0-9]/, ""))!.gsub(/\s/,'-')! if param write_attribute(:name, str) end end
Leave a Reply