我在做這樣的事情在我的遷移:Rails遷移:檢查存在並繼續前進?
add_column :statuses, :hold_reason, :string rescue puts "column already added"
,但事實證明,而這個工程的SQLite的,它不會對PostgreSQL工作。看起來如果add_column爆炸,即使異常被捕獲,,事務已經死亡,所以遷移無法做任何額外的工作。
是否有任何非數據庫特定如何檢查列或表是否已存在?如果沒有,有什麼辦法讓我的救援塊真正起作用嗎?
是它認爲最好PRACT在添加/創建之前檢查列/表是否存在? (我當然知道這取決於手中的問題) – 2014-04-25 11:11:26
如果我在變化方法中定義它,這是否與回滾一起工作? – dardub 2015-09-18 17:57:35
是回滾將是一個問題...我們不確定是否應該刪除列或因爲我們沒有記錄以前的狀態。 – songyy 2016-07-12 09:26:41