In Ruby on Rails < 3 (without Rails features, only Ruby)
module MyModule
def self.included(base)
base.class_eval do
before_save :do_something
end
end
def do_something
#do whatever
end
end
In Ruby on Rails >= 3 (with Rails Concern feature)
module MyModule
extend ActiveSupport::Concern
included do
before_save :do_something
end
def do_something
#do whatever
end
end