Sha256: 9de1da7ff4292274f779d6bdf68d883b0806ba22948fab56cd9864c2c4990eae

Contents?: true

Size: 893 Bytes

Versions: 6

Compression:

Stored size: 893 Bytes

Contents

class RemoveBlogIds < ActiveRecord::Migration
  def self.up
    if adapter_name == 'PostgreSQL'
      indexes(:contents).each do |index|
        if index.name =~ /blog_id/
          remove_index(:contents, :name => index.name)
        end
      end
    else
      remove_index :contents, :blog_id rescue nil
    end
    remove_column :contents, :blog_id 
    remove_column :sidebars, :blog_id 
    remove_column :feedback, :blog_id 
  end

  def self.down
    add_column :contents, :blog_id, :integer
    add_column :sidebars, :blog_id, :integer
    add_column :feedback, :blog_id, :integer

    default_blog_id = Blog.find(:first, :order => 'id').id

    Content.update_all("blog_id = #{default_blog_id}")
    Feedback.update_all("blog_id = #{default_blog_id}")
    Sidebar.update_all("blog_id = #{default_blog_id}")

    change_column :sidebars, :blog_id, :integer, :null => false
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
typo-5.5 db/migrate/067_remove_blog_ids.rb
typo-5.4.4 db/migrate/067_remove_blog_ids.rb
typo-5.4.3 db/migrate/067_remove_blog_ids.rb
typo-5.4.2 db/migrate/067_remove_blog_ids.rb
typo-5.4.1 db/migrate/067_remove_blog_ids.rb
typo-5.4 db/migrate/067_remove_blog_ids.rb