Ruby on rails 3 - rake db:migrate除了查看迁移文件之外还做什么?



我正在尝试调试迁移数据库时遇到的问题。

我让我的应用程序运行没有问题,并将其推到heroku,并运行rake db:migrate并得到错误

<>之前PG::错误:错误:关系"places"不存在第4行:WHERE a.a trelid = ' ' places '::regclass^: SELECT a.a attname, format_typeAtttypid, a.atttypmod), d.a adsrc, a.attnotnull从pg_attribute a左连接pg_attrdefa.attrelid = d.adrelid AND a.attnum = d.adnumWHERE a.a trelid = ' ' places '::regclassAND .attnum> 0 AND NOT . atttis drop按a.attnum排序之前

我发现非常奇怪的是,本地迁移很好,但在服务器上迁移时却不行。我发现其他一些人也有类似的问题,但从来没有人有解决方案。我在StackOverflow上找到的答案都没有被接受。在尝试了几个小时的不同内容后,我想我应该尝试着从头开始创建一个新的heroku应用,并将我的应用推向它(这对其他人来说很有效),基本上是从头开始。

当我这样做的时候,我得到了同样的错误,但现在在wineries上。

奇怪的是,在Heroku的建议下,我尝试在本地创建一个新的db,并运行我的迁移。

现在在本地,我得到相同的错误,但在表admin_users

我很确定实际的迁移文件没有任何问题,因为每次我运行迁移,我得到一个不同的表,因此在某些方面受到影响的不同迁移。

我试过删除一些宝石,但仍然遇到同样的错误。

rake:db是否查看迁移文件以外的任何文件?这是关系问题吗?

对于如何解决这个问题有其他建议吗?

您是否在迁移中访问/使用任何模型来进行任何数据更新?你是否在配置/初始化器中使用任何模型?Rake db:migrate加载rails环境,所以如果你尝试访问一个还不存在的模型,它会吐出这个错误…

相关内容

  • 没有找到相关文章

最新更新