For the example cited, you could also use ActiveRecord::Dirty
def clean_summary self.summary = summary.squish if self.summary_changed? end