Heroku 运行 rake db:migrate 命令不更新数据库
Heroku run rake db:migrate command doesn't update database
我正在阅读 railstutorial.org Chapter 2 (about toy_app) using cloud IDE,但我 运行 遇到了一个问题。我是新手,所以我会很感激一个简单的解决方案和解释我做错了什么。
- 我按照教程中的描述执行了每个步骤:我创建了 'hello world' 索引页面并将其推送到 heroku。我也重命名了我的 heroku 站点(教程中不需要)。那一刻一切都很好
- 我添加了用户模型和微博模型。我已经启动了一个本地服务器(在第二个终端上输入
rails server -b $IP -p $PORT
)并添加了一些用户和微博。同样,一切都按预期工作。
- 我没有关闭本地服务器。我提交了对 git 的更改,并将其推送到 Bitbucket,然后推送到 heroku。最后,我输入了
heroku run rake db:migrate
。这是本教程的最后一步。
一切似乎都很好,但我注意到我在本地服务器上添加的帖子和用户在我的 heroku 站点上不可见。由于我没有关闭我的本地服务器,我检查了它并且我创建的帖子仍然可用。正如我所说,我的 heroku 网站上的情况有所不同。
我在那个过程中没有收到任何错误,在输入 git push
后只有一个警告:Warning: Permanently added the RSA host key for IP address
... to the list of known hosts
。下次没出现。
在我第一次尝试每一步之后,我得到了有希望的输出。第二次和下一次尝试后返回
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean`
和
Everything up-to-date
所以还是没什么好担心的。
我尝试重新启动服务器,在关闭本地服务器后再次执行这些步骤,但没有帮助。我搜索了解决方案,但我发现的只是大量错误或不同问题的问题。
实际上,这是我可以接受的问题,因为我不需要在这个阶段更新它,但我想听到一个答案,看看 heroku 是否有问题或者它是正常行为或者即使是新手的盲目。
首先你的本地数据库和heroku数据库不一样。除非您使用公共数据库,否则在本地应用程序上创建的任何用户都不会在 heroku 应用程序上可用。
rake db:migrate
,在其最基本的形式中,只是 运行 所有尚未 运行 的迁移的 change 或 up 方法。如果没有这样的迁移,它就会退出。它将 运行 这些迁移根据迁移日期按顺序进行。
尝试在 heroku 应用程序上创建用户和 post,它应该可以正常工作。
我正在阅读 railstutorial.org Chapter 2 (about toy_app) using cloud IDE,但我 运行 遇到了一个问题。我是新手,所以我会很感激一个简单的解决方案和解释我做错了什么。
- 我按照教程中的描述执行了每个步骤:我创建了 'hello world' 索引页面并将其推送到 heroku。我也重命名了我的 heroku 站点(教程中不需要)。那一刻一切都很好
- 我添加了用户模型和微博模型。我已经启动了一个本地服务器(在第二个终端上输入
rails server -b $IP -p $PORT
)并添加了一些用户和微博。同样,一切都按预期工作。 - 我没有关闭本地服务器。我提交了对 git 的更改,并将其推送到 Bitbucket,然后推送到 heroku。最后,我输入了
heroku run rake db:migrate
。这是本教程的最后一步。
一切似乎都很好,但我注意到我在本地服务器上添加的帖子和用户在我的 heroku 站点上不可见。由于我没有关闭我的本地服务器,我检查了它并且我创建的帖子仍然可用。正如我所说,我的 heroku 网站上的情况有所不同。
我在那个过程中没有收到任何错误,在输入 git push
后只有一个警告:Warning: Permanently added the RSA host key for IP address
... to the list of known hosts
。下次没出现。
在我第一次尝试每一步之后,我得到了有希望的输出。第二次和下一次尝试后返回
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean`
和
Everything up-to-date
所以还是没什么好担心的。
我尝试重新启动服务器,在关闭本地服务器后再次执行这些步骤,但没有帮助。我搜索了解决方案,但我发现的只是大量错误或不同问题的问题。
实际上,这是我可以接受的问题,因为我不需要在这个阶段更新它,但我想听到一个答案,看看 heroku 是否有问题或者它是正常行为或者即使是新手的盲目。
首先你的本地数据库和heroku数据库不一样。除非您使用公共数据库,否则在本地应用程序上创建的任何用户都不会在 heroku 应用程序上可用。
rake db:migrate
,在其最基本的形式中,只是 运行 所有尚未 运行 的迁移的 change 或 up 方法。如果没有这样的迁移,它就会退出。它将 运行 这些迁移根据迁移日期按顺序进行。
尝试在 heroku 应用程序上创建用户和 post,它应该可以正常工作。