Mercurial > hg > soundsoftware-site
annotate db/migrate/072_add_enumerations_position.rb @ 599:251b380117ce feature_227
Introduce a new latest_downloads plugin to manage active and shortcut for attachments.
Add a table for attachment active/shortcut data.
Move existing active-handler code into the new plugin (but still using the "old" active column in the attachments table). Note the files_controller stuff doesn't actually work here.
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Tue, 16 Aug 2011 17:01:19 +0100 |
parents | 513646585e45 |
children | 622f24f53b42 |
rev | line source |
---|---|
Chris@0 | 1 class AddEnumerationsPosition < ActiveRecord::Migration |
Chris@0 | 2 def self.up |
Chris@0 | 3 add_column(:enumerations, :position, :integer, :default => 1) unless Enumeration.column_names.include?('position') |
Chris@0 | 4 Enumeration.find(:all).group_by(&:opt).each do |opt, enums| |
Chris@0 | 5 enums.each_with_index do |enum, i| |
Chris@0 | 6 # do not call model callbacks |
Chris@0 | 7 Enumeration.update_all "position = #{i+1}", {:id => enum.id} |
Chris@0 | 8 end |
Chris@0 | 9 end |
Chris@0 | 10 end |
Chris@0 | 11 |
Chris@0 | 12 def self.down |
Chris@0 | 13 remove_column :enumerations, :position |
Chris@0 | 14 end |
Chris@0 | 15 end |