19 lines
377 B
Ruby
19 lines
377 B
Ruby
|
# encoding: utf-8
|
||
|
|
||
|
namespace :items do
|
||
|
task :tree_changes => :environment do
|
||
|
Item.all.each do |item|
|
||
|
item.position -= 1
|
||
|
item.parent_ids = ancestors(item)
|
||
|
item.rename(:full_name, :path)
|
||
|
item.save
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def ancestors(item)
|
||
|
node, nodes = item, []
|
||
|
nodes << node = node.parent while !node.parent.blank? rescue nil
|
||
|
nodes.reverse
|
||
|
end
|
||
|
|
||
|
end
|