ruby-on-rails - 推送到 Heroku 时带有 Postgres 的 Rails 迁移错误

标签 ruby-on-rails postgresql heroku rails-migrations

我正在尝试执行后续迁移以更改“tweet”模型表中的“number”列

class ChangeDataTypeForTweetsNumber < ActiveRecord::Migration
  def up
    change_column :tweets do |t|
      t.change :number, :integer
    end
  end

  def down
    change_table :tweets do |t|
      t.change :number, :string
    end
  end
end

在执行后续迁移到 heroku 后......

heroku rake db:migrate:up VERSION=20120925211232

出现以下错误

    PG::Error: ERROR:  column "number" cannot be cast to type integer
: ALTER TABLE "tweets" ALTER COLUMN "number" TYPE integer

如果您有任何想法,我们将不胜感激。

谢谢大家

最佳答案

同上但更简洁一点:

change_column :yourtable, :column_to_change, 'integer USING CAST("column_to_change" AS integer)'

关于ruby-on-rails - 推送到 Heroku 时带有 Postgres 的 Rails 迁移错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12603498/

相关文章:

sql - psql generate_series 方法不支持内部连接

Heroku 日志记录不起作用

php - 如何运行包含来自 heroku 上托管的 php 库的 python 脚本?

ruby-on-rails - Heroku 上的 Delayed_Job 显示 "Forbidden"错误

html - 简单表单复选框左对齐

python - 计时 Django 数据库查询

ruby-on-rails - rails 字段上的唯一性约束 ruby

postgresql - 使用docker使用sequelize时SequelizeConnectionRefusedError : connect ECONNREFUSED 127. 0.0.1:5432

ruby-on-rails - 您将 CSS 文件放在 Rails 应用程序目录中的什么位置?

javascript - 使用 bootstrap3 modal、jquery 和 Rails 4 为我当前的模型创建父对象