2012-06-18 27 views
1

我有一個模型有幾個可爲空列,由於額外的工作,需要一些列現在是非空。使用遷移將change_column從可爲空變爲非空的有效方法?

我遇到的問題是有外鍵約束。有可選的關聯,現在不是可選的。

我有很多需要關聯的空白關聯數據。建議嗎?

來源:

t.integer :user_id, :null => true 
    t.integer :place_id, :null => true 

要:

change_column :hotel, :user_id, :integer,  :null => false 
change_column :hotel, :place_id, :integer, :null => false 

我知道我可以使用:默認=> VAL選項,但還有什麼我應該考慮到這個開關時?

+0

您打算如何處理這些「不再可選的FK」?你需要發明一個可以同時用於所有人的佔位符嗎?爲每個創建一個佔位符? –

+0

@ muistooshort我是一個問同一個問題;) –

+0

我們不能真正幫助你找出你的業務需求,這不是businessanalysts.stackexchange.com :)事情的編程方面是非常簡單的一次在這裏一次你知道什麼是業務需求。 –

回答

1

創建鏈接相關的數據,以現有記錄單獨的遷移,並確保遷移名爲使其的一個,你添加:null => false限制之前運行

相關問題