annotate db/migrate/.svn/text-base/20090312194159_add_projects_trackers_unique_index.rb.svn-base @ 734:1d1b8170c2f7 feature_318

Switch to SSL earlier when doing a push -- check for branchmap command. This is unequivocally a hack
author Chris Cannam
date Fri, 04 Nov 2011 14:41:21 +0000
parents 513646585e45
children
rev   line source
Chris@0 1 class AddProjectsTrackersUniqueIndex < ActiveRecord::Migration
Chris@0 2 def self.up
Chris@0 3 remove_duplicates
Chris@0 4 add_index :projects_trackers, [:project_id, :tracker_id], :name => :projects_trackers_unique, :unique => true
Chris@0 5 end
Chris@0 6
Chris@0 7 def self.down
Chris@0 8 remove_index :projects_trackers, :name => :projects_trackers_unique
Chris@0 9 end
Chris@0 10
Chris@0 11 # Removes duplicates in projects_trackers table
Chris@0 12 def self.remove_duplicates
Chris@0 13 Project.find(:all).each do |project|
Chris@0 14 ids = project.trackers.collect(&:id)
Chris@0 15 unless ids == ids.uniq
Chris@0 16 project.trackers.clear
Chris@0 17 project.tracker_ids = ids.uniq
Chris@0 18 end
Chris@0 19 end
Chris@0 20 end
Chris@0 21 end