# Example: # # class Page < ActiveRecord::Base # include Positioned # end module Positioned def self.included model_class model_class.class_eval do before_save :set_position end end protected def set_position self.position ||= 1 + eval("#{self.class.to_s}.maximum(:position)").to_i end end