2014-12-30 149 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 

回答