module OrderedTree::InstanceMethods::Destroy
Public Instance Methods
destroy_and_orphan_children()
click to toggle source
sends immediate children to the ‘roots’ list, then destroy’s self
# File lib/ordered_tree/instance_methods/destroy.rb, line 7 def destroy_and_orphan_children self.class.transaction do orphan_children self.destroy end end
destroy_and_parent_adopts_children()
click to toggle source
hands immediate children of to it’s parent, then destroy’s self
# File lib/ordered_tree/instance_methods/destroy.rb, line 15 def destroy_and_parent_adopts_children self.class.transaction do parent_adopts_children self.destroy end end
reorder_children()
click to toggle source
# File lib/ordered_tree/instance_methods/destroy.rb, line 22 def reorder_children self.class.transaction do children(true).each do |child| new_position = children.index(child) + 1 child.update_attribute(order_column, new_position) if (child.position_in_list != new_position) end end end