我在将Rails应用程序部署到Heroku时遇到问题,在try 访问该应用程序时会引发此错误:

PGError:错误:关系"组织"不存在(ActiveRecord::StatementInvalid)

SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc, a.attnotnull
FROM pg_attribute a LEFT JOIN pg_attrdef d
  ON a.attrelid = d.adrelid AND a.attnum = d.adnum
WHERE a.attrelid = '"organizations"'::regclass
  AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY a.attnum

有人有什么 idea 吗?这对我来说是第一次,尤其是因为我和Heroku在其他应用上合作了一年,还没有看到类似的东西.当然,一切都在本地SQLite上运行.

推荐答案

我也有同样的问题.要解决这个问题,重置数据库更容易.

  • heroku rake db:reset(如果您在cedar上,则使用heroku run rake db:reset)
  • heroku rake db:migrate('heroku run rake db:migrate'如果你在cedar上)

然后,我的 case 成功完成了迁移:)

虽然在这种情况下这是一个很好的解决方案,但不要在生产环境中这样做.它将从数据库中删除所有记录

Ruby-on-rails相关问答推荐

如何测试自定义路由?

如何获取 Rails 表单构建器将为某个字段生成的 HTML名称属性?

ArgumentError:您需要使用 :if 提供至少一个验证

Ruby 地理定位Ruby /插件

在 Rails 的 ActiveRecord 中,touch 有什么用?

如何添加到序列化数组

从 Authlogic 迁移到 Devise

价格字段的字符串、小数或浮点数据类型?

Rails:参数太少

如何将 yaml 文件解析为 ruby​​ 哈希和/或数组?

如何在 rspec 测试中输出变量?

在 PostgreSQL 中强制字符串的最大长度

Rails:使用 link_to 创建不带 href 的链接

升级到 ruby​​ 1.9.2 后奇怪的无法要求配置/ bootstrap

Ruby on Rails 中的MySQL 服务器已经消失

默认呈现 JSON 而不是 HTML?

Rails Devise:设置密码重置令牌并重定向用户

如何从 rails 控制器操作发出 404 响应?

让 bundler 为不同的平台使用不同的 gem

如何从 ApplicationHelper 调用 ApplicationController 方法