Proper timestamps in callbacks

Yay, another Task model:

## the model class Task < ActiveRecord::Base

attr_accessible :lots, :of, :stuff, :but, :not, :finished_at, :and, :finished

  before_save do     @before_save.call if @before_save   end

  def finish     self.finished = true     @before_save = proc { self.finished_at = Time.now }   end end

## usage t = Task.find(some_id) t.finish t.save

(same code on pastie: Parked at Loopia)

I'm thinking that going self.finished-at = Time.now directly in the finish method will cause finished_at to be a bit earlier that updated_at. I want it to be the same.

Ideas? The method above is working, but it seems a bit overkill.