Skip to content

Instantly share code, notes, and snippets.

@sekrett
Created January 12, 2012 17:25
Show Gist options
  • Save sekrett/1601872 to your computer and use it in GitHub Desktop.
Save sekrett/1601872 to your computer and use it in GitHub Desktop.
Positioned module
# 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
@sekrett
Copy link
Author

sekrett commented Sep 17, 2013

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment