2014-12-30 215 views
2

我正在將我的應用程序從使用SQLite的Nitrous.io移植到使用Postgres的Heroku中,並且出現以下錯誤。 2件事,我不明白爲什麼它不會做change_column,我絕對不明白他們的「提示」。我怎樣才能正確實施?Ruby on Rails 4 - 在Heroku上使用Rake

-- change_column(:messages, :sender, :integer)                          
PG::DatatypeMismatch: ERROR: column "sender" cannot be cast automatically to type integer               
HINT: Specify a USING expression to perform the conversion.                      
: ALTER TABLE "messages" ALTER COLUMN "sender" TYPE integer 

屬性是字符串,我想更改爲整數,所以我可以引用它們。 有什麼幫助嗎? 下面是我的數據庫遷移,它被引用:

class ChangeSenderReceiverToInteger < ActiveRecord::Migration 
    def change 
    change_column(:messages, :sender, :integer) 
    change_column(:messages, :receiver, :integer) 
    end 
end 

回答