2015-08-28 106 views
1

我想知道是否有辦法生成遷移,這些遷移以與創建表,添加或刪除列相同的方式進行更改。如何生成遷移以更改Rails中的數據庫列

E.g.創建一個表,我會用:

rails generate migration CreateProducts name:string part_number:string 

對於添加一列,我會用:

rails generate migration AddUserRefToProducts user:references 

我把這個例子從Rails Guides但對於改變專欄中,我找不到任何東西,讓我們說要設置默認值。

+0

3.4節你的鏈接, 「更改列」? –

+0

它顯示瞭如何設置它,如果你有一個遷移文件,但我想知道如何創建這個文件的任務。 – Flip

+0

「rails g migration」 - 或者你的意思是腳手架? –

回答

1

Rails Migrations

  • change_column(TABLE_NAME,列名,類型,選項):更改使用相同的參數作爲add_column的列不同的類型。

例,遷移內:

class CahngeColumnInTablename < ActiveRecord::Migration 
    def change 
    change_column :tablename, :field, :string , default: <default_value> 
    end 
end