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

Ajax

开发平台:

Others

  1. class AddArticleUserId < ActiveRecord::Migration
  2.   class BareArticle < ActiveRecord::Base
  3.     include BareMigration
  4.   end
  5.   class BareUser < ActiveRecord::Base
  6.     include BareMigration
  7.   end
  8.   def self.up
  9.     STDERR.puts "Linking article authors to users"
  10.     modify_tables_and_update(:add_column, BareArticle, :user_id, :integer) do |art|
  11.       art.user_id = (BareUser.find_by_name(art.author).id rescue nil)
  12.     end
  13.     user_first = BareUser.first
  14.     if user_first.nil?
  15.       user_id = 1
  16.     else
  17.       user_id = user_first.id
  18.     end
  19.     BareArticle.find(:all, :conditions => 'user_id IS NULL').each do |art|
  20.       art.user_id = user_id
  21.       art.save!
  22.     end
  23.   end
  24.   def self.down
  25.     remove_column :articles, :user_id
  26.   end
  27. end