Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Page < ActiveRecord::Base
- before_create :page_number
- after_destroy :shift_pages
- def page_number
- max = find_by_sql(['SELECT MAX(page) AS page FROM pages WHERE type = ?', self.class.name]).first.page
- self.page = max + 1
- end
- def shift_pages
- find(:all, :conditions=> ['page > ?', self.page]).each do |entry|
- entry.decrement!('page')
- end
- end
- end
Add Comment
Please, Sign In to add comment