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 |