1

我在将数据迁移到我的 heroku 应用程序时遇到了问题,该应用程序将 Postgresql 作为我的托管站点(生产)的数据库。在我的开发站点上,我有使用 Sqlite3 作为数据库的 rails 3.2.13。我遵循了 Michael Hartl 的 Ruby on rails 教程

我曾经git push heroku在 heroku 更新我的网站。我还想与数据一起更新数据库。但是heroku run rake db:migrate迁移模式而不是数据。我试图db:push将数据推送到heroku,但出现错误

dependency.rb in 'to_specs' :Could not find sequel (~) 3.20.0

我也搜索过,发现我应该先将我的 sqlite 数据转储到 dump.sql 然后运行

heroku pg:psql HEROKU_POSTGRESQL_COLOR --app app_name < file.sql正如在https://stackoverflow.com/questions/15371394/...中回答的那样, 但它失败了 the local psql command could not be located

请告诉我我做错了什么。或者用我的开发 sqlite3 数据更新 heroku postgresql 的正确方法是什么。

提前致谢

4

1 回答 1

1

用您现在在开发数据库中的数据填充生产数据库不是一个好主意。因为,如果将来您的生产数据库出现问题,并且需要重新填充它,您的开发数据库可能会更改(例如删除),并且您将无法再次执行此操作。

为此,Rails 在db/seeds.rb文件中提供了种子。您应该在那里创建所有必需的对象。

然后,当您将代码推送到 Heroku 时,Heroku 将准备数据库、创建模式并为其播种。如果您需要手动为数据库播种,可以运行bundle exec rake db:seed,如果您想在 Heroku 中运行它:heroku run bundle exec rake db:migrate

于 2013-09-14T03:47:49.080 回答