2015-10-04 39 views
1

我有一個在rails應用程序中創建的Postgresql數據庫,我想添加默認值。將缺省值添加到rails數據庫

我創建了一個遷移

class AddCityStateDefaults < ActiveRecord::Migration 
    def change 
    change_table :addresses do |t| 
     t.change_default :city, default: "Los Angeles" 
     t.change_default :state, default: "CA" 
    end 
    end 
end 

但是這會導致「---:默認:洛杉磯」,而不只是「洛杉磯」

只是可以肯定,兩列我的米試圖改變命名城市和國家,他們是類型字符變化。我通過bin/rails generate migration AddCityStateDefaults創建了遷移,然後編輯了遷移。我不認爲我可以在原始創作中寫下這些變化(我知道它可以完成,但對我來說卻更復雜,我最終會到達那裏)。

我對此很感興趣,事實上我曾試圖創建第一次遷移,而不是對現有遷移進行細微修改。

謝謝。我知道這只是語法上的一個小改變,但到達這裏卻很具挑戰性。

PS。我該怎麼做,並且正在改變現在的不同?

回答

1

你應該通過只是一個值,而不是一個哈希

class AddCityStateDefaults < ActiveRecord::Migration 
    def change 
    change_table :addresses do |t| 
     t.change_default :city, "Los Angeles" 
     t.change_default :state, "CA" 
    end 
    end 
end 

http://apidock.com/rails/ActiveRecord/ConnectionAdapters/Table/change_default

+0

感謝。有點明顯。我已經說過這是默認的改變。學習。接下來的應該會更容易。簡單更好。 – Greg