Ruby on rails Heroku上的ActiveRecord PGError不在本地

Ruby on rails Heroku上的ActiveRecord PGError不在本地,ruby-on-rails,postgresql,activerecord,heroku,Ruby On Rails,Postgresql,Activerecord,Heroku,我在Heroku上收到一个ActiveRecord PGError,不是本地的。Heroku日志中的错误消息为: ActiveRecord::StatementInvalid PGError:错误:列项。用户id不存在 第1行:从items.user_id=4或 这段代码在本地SQLite上工作,但在Heroku postgresql上不工作,所以我一直在阅读有关差异的文章。起初,我认为这是一个案例问题,因为我认识到它应该是用户ID-但现在我不确定,这是关于项目的问题,不太正确,我无法确定它到底

我在Heroku上收到一个ActiveRecord PGError,不是本地的。Heroku日志中的错误消息为:

ActiveRecord::StatementInvalid PGError:错误:列项。用户id不存在 第1行:从items.user_id=4或

这段代码在本地SQLite上工作,但在Heroku postgresql上不工作,所以我一直在阅读有关差异的文章。起初,我认为这是一个案例问题,因为我认识到它应该是用户ID-但现在我不确定,这是关于项目的问题,不太正确,我无法确定它到底是什么

正如我所说,这在我的本地机器上运行得非常好,只有在heroku和postgres上才会出现问题


提前感谢。

您的数据库似乎没有items表中的“user\u id”列。这可能是因为您的迁移最近未运行,或者您编辑了现有迁移,而不是进行新迁移以添加此列

你现在关心你在heroku上的数据吗?如果没有,您可以使用Taps获取本地数据库中的任何内容,并将Heroku的数据库设置为它的虚拟同步副本。在项目目录中的本地计算机上:

heroku db:push

这将删除您的heroku数据库,因此请明智地使用它。

您的数据库似乎在items表中没有“user\u id”列。这可能是因为您的迁移最近未运行,或者您编辑了现有迁移,而不是进行新迁移以添加此列

你现在关心你在heroku上的数据吗?如果没有,您可以使用Taps获取本地数据库中的任何内容,并将Heroku的数据库设置为它的虚拟同步副本。在项目目录中的本地计算机上:

heroku db:push

这将清除你的heroku数据库,所以明智地使用它。

这毕竟是一个案例问题-postgres在发送到db之前,我相信所有事情都会失败-我的用户id实际上被称为用户id,令人费解;迁移完成后,一切都正常运行——感谢那些帮助过我的人。

这毕竟是一个案例问题——postgres在发送到db之前,我是否认为一切都不正常——我的用户id实际上被称为用户id,令人费解;迁移后,一切正常-多亏了这些帮助。

尝试使用以下命令重新启动应用程序:

heroku restart

尝试使用以下命令重新启动应用程序:

heroku restart

我做了一个heroku-rake-db:migrate,而不是heroku-db:push,我做了一个heroku-db:pull来降低我的数据并确保它在本地工作,它确实,它在本地工作很好,只是不在heroku上那个列是什么数据类型?您正在本地使用sqlite-尝试在本地移动到postgres,以便查看发生了什么?或者尝试heroku db:resetits是一个整数。我认为,未来我将不得不改变对博士后的发展,我从来没有意识到heroku使用的是什么,但目前我非常确定,如果我搬到博士后所在地,所有将发生的是,我将在当地遇到问题。我可以试试heroku db:reset,但不完全确定为什么我会这么做,我只是觉得问题不在于数据库中的数据。是的,我也必须这么做。如果你在mac电脑上,请确保使用自制软件。祝你好运。非常感谢。。。。如果有人有任何想法的话,我仍然面临着这个问题,不管我是否在本地进入博士后。我做了一个heroku rake db:migrate,而不是heroku db:push,我做了一个heroku db:pull来下载我的数据,并确保它在本地工作,它在本地工作良好,只是不在heroku上。那列是什么数据类型?您正在本地使用sqlite-尝试在本地移动到postgres,以便查看发生了什么?或者尝试heroku db:resetits是一个整数。我认为,未来我将不得不改变对博士后的发展,我从来没有意识到heroku使用的是什么,但目前我非常确定,如果我搬到博士后所在地,所有将发生的是,我将在当地遇到问题。我可以试试heroku db:reset,但不完全确定为什么我会这么做,我只是觉得问题不在于数据库中的数据。是的,我也必须这么做。如果你在mac电脑上,请确保使用自制软件。祝你好运。非常感谢。。。。如果有人有任何想法的话,无论我是否在当地进入博士后,我仍然面临这个问题。。。。