module Sequel::Plugins::Touch::ClassMethods

Attributes

touch_column[RW]

The column to modify when touching a model instance, as a symbol. Also used as the default column when touching associations, if the associations don't specify a column.

touched_associations[R]

A hash specifying the associations to touch when instances are updated or destroyed. Keys are association name symbols and values are column name symbols.

Public Instance Methods

freeze() click to toggle source

Freeze the touched associations when freezing the model class.

Calls superclass method
# File lib/sequel/plugins/touch.rb, line 67
def freeze
  @touched_associations.freeze

  super
end
touch_associations(*associations) click to toggle source

Add additional associations to be touched. See the :association option of the Sequel::Plugin::Touch.configure method for the format of the associations arguments.

# File lib/sequel/plugins/touch.rb, line 76
def touch_associations(*associations)
  associations.flatten.each do |a|
    a = {a=>touch_column} if a.is_a?(Symbol)
    a.each do |k,v|
      raise(Error, "invalid association: #{k}") unless association_reflection(k)
      touched_associations[k] = v
    end
  end
end