comparison db/migrate/072_add_enumerations_position.rb @ 1526:404aa68d4227

Merge from live branch
author Chris Cannam
date Thu, 11 Sep 2014 12:46:20 +0100
parents 261b3d9a4903
children
comparison
equal deleted inserted replaced
1493:a5f2bdf3b486 1526:404aa68d4227
1 class AddEnumerationsPosition < ActiveRecord::Migration 1 class AddEnumerationsPosition < ActiveRecord::Migration
2 def self.up 2 def self.up
3 add_column(:enumerations, :position, :integer, :default => 1) unless Enumeration.column_names.include?('position') 3 add_column(:enumerations, :position, :integer, :default => 1) unless Enumeration.column_names.include?('position')
4 Enumeration.find(:all).group_by(&:opt).each do |opt, enums| 4 Enumeration.all.group_by(&:opt).each do |opt, enums|
5 enums.each_with_index do |enum, i| 5 enums.each_with_index do |enum, i|
6 # do not call model callbacks 6 # do not call model callbacks
7 Enumeration.update_all "position = #{i+1}", {:id => enum.id} 7 Enumeration.update_all "position = #{i+1}", {:id => enum.id}
8 end 8 end
9 end 9 end