添加多态引用的向下迁移是什么?

时间:2009-10-02 22:49:48

标签: ruby-on-rails migration

我有以下迁移但不知道在down方法中使用什么

change_table :addresses do |t|
  t.references :addressable, :polymorphic => true
end

5 个答案:

答案 0 :(得分:15)

实际上,

   change_table :addresses do |t|
     t.remove_references :addressable
   end

会有点武装,不是吗?

编辑:正如Eben Geer指出的那样

   change_table :addresses do |t|
     t.remove_references :addressable, :polymorphic => true
   end

是执行此操作的正确方法。干杯!

答案 1 :(得分:7)

def self.down
  change_table :addresses do |t|
    t.remove_references :addressable, :polymorphic => true
  end
end

答案 2 :(得分:4)

class RemoveAddressableFromAddresses < ActiveRecord::Migration
  def change
    remove_reference :addresses, :addressable, polymorphic: true, index: true
  end
end

答案 3 :(得分:2)

有什么问题?

def self.down
  remove_column :addresses, :addressable_type
  remove_column :addresses, :addressable_id
end

答案 4 :(得分:-2)

这有什么问题?

def self.down
  remove_column :addresses, :addressable
end