2012-02-07 118 views
1

因此,假設我已經使用rails generate來創建模型,並隨後爲其創建遷移。自動生成新遷移

現在事實證明我對這些模型做了一些修改(修正了一些關係)。是否可以創建基於當前模型的遷移?

  • 我不想使用rails generate來再次生成模型。
  • 我不想手動編寫遷移。

回答

1

你需要做什麼與遷移?

如果需要刪除或添加某些列,你可以使用: AddXXXToYYYRemoveXXXFromYYY

所以,如果你想某列添加到YYY表使用:

rails generate migration add_attr1_and_attr2_to dogs attr1:string attr2:string

這將產生(軌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