067_remove_blog_ids.rb
上传用户:netsea168
上传日期:2022-07-22
资源大小:4652k
文件大小:1k
源码类别:

Ajax

开发平台:

Others

  1. class RemoveBlogIds < ActiveRecord::Migration
  2.   def self.up
  3.     if adapter_name == 'PostgreSQL'
  4.       indexes(:contents).each do |index|
  5.         if index.name =~ /blog_id/
  6.           remove_index(:contents, :name => index.name)
  7.         end
  8.       end
  9.     else
  10.       remove_index :contents, :blog_id rescue nil
  11.     end
  12.     remove_column :contents, :blog_id 
  13.     remove_column :sidebars, :blog_id 
  14.     remove_column :feedback, :blog_id 
  15.   end
  16.   def self.down
  17.     add_column :contents, :blog_id, :integer
  18.     add_column :sidebars, :blog_id, :integer
  19.     add_column :feedback, :blog_id, :integer
  20.     default_blog_id = Blog.find(:first, :order => 'id').id
  21.     Content.update_all("blog_id = #{default_blog_id}")
  22.     Feedback.update_all("blog_id = #{default_blog_id}")
  23.     Sidebar.update_all("blog_id = #{default_blog_id}")
  24.     change_column :sidebars, :blog_id, :integer, :null => false
  25.   end
  26. end