lib/track_changes/action_controller.rb
def track_changes models, *args
      models_to_track = []
      models_to_track << models
      if args.kind_of?(Array)
        models_to_track << args
      end
      models_to_track.flatten!

      define_method(:__track_changes_to_models) { models_to_track }

      self.class_eval do
        helper :audits
        before_filter TrackChanges::CurrentUserFilter
      end
    end
def track_changes models, *args
      models_to_track = []
      models_to_track << models
      if args.kind_of?(Array)
        models_to_track << args
      end
      models_to_track.flatten!

      define_method(:__track_changes_to_models) { models_to_track }

      self.class_eval do
        helper :audits
        before_filter TrackChanges::CurrentUserFilter
      end
    end
Sets up an around filter to assign the controller's <tt>current_user</tt>
 to the given model names that are already set as instance variables in a
 prior <tt>before_filter</tt>.

 Example:

  track_changes :post
  track_changes :post, :post_attribute

 Currently does not work if the instance variable is anything except
 an model that has <tt>current_user</tt> accessors.