Sha256: 772bc3cefcca93d33c70821a8eb37aabf16029556306ed31a593d908a4ceb307

Contents?: true

Size: 1.53 KB

Versions: 30

Compression:

Stored size: 1.53 KB

Contents

class Bare35Content < ActiveRecord::Base
  include BareMigration
end

class BoolifyContentAllowFoo < ActiveRecord::Migration
  def self.up
    STDERR.puts "Boolifying contents.allow_(comments|pings)"

    modify_tables_and_update([:rename_column, Bare35Content, :allow_pings,    :old_ap],
                             [:add_column,    Bare35Content, :allow_pings,    :boolean],
                             [:rename_column, Bare35Content, :allow_comments, :old_ac],
                             [:add_column,    Bare35Content, :allow_comments, :boolean]) do |c|
      unless $schema_generator
        c.allow_pings    = !c.old_ap.to_i.zero? ? true : false unless c.old_ap.nil?
        c.allow_comments = !c.old_ac.to_i.zero? ? true : false unless c.old_ac.nil?
      end
    end
    remove_column :contents, :old_ap
    remove_column :contents, :old_ac
  end

  def self.down
    STDERR.puts "Un-Boolifying contents.allow_(comments|pings)"
    modify_tables_and_update([:rename_column, Bare35Content, :allow_pings,    :old_ap],
                             [:add_column,    Bare35Content, :allow_pings,    :integer],
                             [:rename_column, Bare35Content, :allow_comments, :old_ac],
                             [:add_column,    Bare35Content, :allow_comments, :integer]) do |c|
      unless $schema_generator
        c.allow_pings    = c.old_ap ? 1 : 0 unless c.old_ap.nil?
        c.allow_comments = c.old_ac ? 1 : 0 unless c.old_ac.nil?
      end
    end
    remove_column :contents, :old_ap
    remove_column :contents, :old_ac
  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
typo-5.5 db/migrate/035_boolify_content_allow_foo.rb
typo-5.4.4 db/migrate/035_boolify_content_allow_foo.rb
typo-5.4.3 db/migrate/035_boolify_content_allow_foo.rb
typo-5.4.2 db/migrate/035_boolify_content_allow_foo.rb
typo-5.4.1 db/migrate/035_boolify_content_allow_foo.rb
typo-5.4 db/migrate/035_boolify_content_allow_foo.rb
typo-3.99.0 db/migrate/035_boolify_content_allow_foo.rb
typo-3.99.2 db/migrate/035_boolify_content_allow_foo.rb
typo-3.99.1 db/migrate/035_boolify_content_allow_foo.rb
typo-3.99.3 db/migrate/035_boolify_content_allow_foo.rb
typo-4.0.1 db/migrate/035_boolify_content_allow_foo.rb
typo-4.0.0 db/migrate/035_boolify_content_allow_foo.rb
typo-4.0.2 db/migrate/035_boolify_content_allow_foo.rb
typo-3.99.4 db/migrate/035_boolify_content_allow_foo.rb
typo-4.0.3 db/migrate/035_boolify_content_allow_foo.rb
typo-4.1.1 db/migrate/035_boolify_content_allow_foo.rb
typo-4.1 db/migrate/035_boolify_content_allow_foo.rb
typo-5.0.2 db/migrate/035_boolify_content_allow_foo.rb
typo-5.0.1 db/migrate/035_boolify_content_allow_foo.rb
typo-5.0.3.98.1 db/migrate/035_boolify_content_allow_foo.rb