自动生成新的迁移

时间:2012-02-07 13:56:50

标签: ruby-on-rails-3

因此假设我使用了rails generate来创建模型,然后为它创建了迁移。

现在事实证明我对这些模型进行了一些修改(修正了一些关系)。是否可以根据我当前的模型创建迁移?

  • 我不想再使用rails generate来生成模型。
  • 我不想手动编写迁移。

1 个答案:

答案 0 :(得分:1)

您需要对迁移做些什么?

如果您需要删除或添加一些列,您可以使用: AddXXXToYYYRemoveXXXFromYYY

因此,如果要将某列添加到YYY表,请使用:

rails generate migration add_attr1_and_attr2_to dogs attr1:string attr2:string

这将生成(rails 3.2.0):

class AddAttr1AndAttr2ToDogs < ActiveRecord::Migration
  def change
    add_column :dogs, :attr1, :string

    add_column :dogs, :attr2, :string

  end
end

删除列也一样:

r g migration remove_attr1_and_attr2_from_dogs attr1:string attr2:string