ruby-on-rails – 生产失败/ heroku:WHERE a.attrelid =’“schools”’:: regclass

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 生产失败/ heroku:WHERE a.attrelid =’“schools”’:: regclass前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的本地环境中添加了一个名为学校的表格,它在开发中工作得很好.实际上它甚至可以在staging(heroku)中正常工作,但是在生产和rake db:migrate中失败的时候会抛出错误.

我甚至无法预编译assest(使用RAILS_ENV = production),访问我的应用程序的任何部分,包括生产中的rails控制台(heroku).一切都在抛出错误.我已经失去了几个小时,但我觉得没有更接近我们的想法. (注意:我对table_name的引用有’“…”’,我认为这是问题的一部分)

我从rails 3.1.0转到3.1.3,这可能与它有关.

PGError: ERROR:  relation "schools" does not exist

LINE 4:              WHERE a.attrelid = '"schools"'::regclass
                                        ^
:             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 = '"schools"'::regclass
               AND a.attnum > 0 AND NOT a.attisdropped
             ORDER BY a.attnum

我对此感到迷茫.我在这里阅读了关于这个主题的其他几个问题,但没有解决方案.谢谢您的帮助.
非常感谢任何见解.

UPDATE ————————————————- —–

我刚刚在heroku上创建了一个全新的应用程序并运行了rake db:migrate并得到了同样的错误.

更新2

我从heroku克隆了应用程序,“学校”在模式中.

create_table "schools",:force => true do |t|
  ...
  ...
end

更新3

尝试恢复到rails 3.1.0,但这没有帮助.

更新4

仍在努力.还没有听说过heroku支持.

更新5

Heroku支持能够检查“学校”不是数据库中的表,但我仍然无法访问控制台和应用程序.

解决方法

Heroku支持帮助我解决了这个问题,尽管我们发现它并不一定是heroku的平台相关问题.

我遇到了鸡与蛋的问题,迁移无法运行,因为rails bootstrap正在尝试与表进行通信,并且由于迁移无法运行而未创建表.当铁路启动时,ActiveAdmin正在初始化,并试图查找学校.谢谢大家的帮助.

原文链接:https://www.f2er.com/ruby/268254.html

猜你在找的Ruby相关文章