2016-01-06 79 views
0

我刚刚安装了Heroku,并试图让我的应用程序在其上运行。Heroku未定义表错误

我得到这个错误

2016-01-06T11:27:26.741740+00:00 app[web.1]: => Rails 4.2.0 application starting in production on http://0.0.0.0:47038 
2016-01-06T11:27:26.741741+00:00 app[web.1]: => Run `rails server -h` for more startup options 
2016-01-06T11:27:26.741741+00:00 app[web.1]: => Ctrl-C to shutdown server 
2016-01-06T11:27:26.741742+00:00 app[web.1]: Started GET "/" for 122.104.136.142 at 2016-01-06 11:27:26 +0000 
2016-01-06T11:27:26.800681+00:00 app[web.1]: Processing by ProductsController#home as HTML 
2016-01-06T11:27:26.819306+00:00 app[web.1]: Product Load (1.5ms) SELECT "products".* FROM "products" LIMIT 30 OFFSET 0 
2016-01-06T11:27:26.819330+00:00 app[web.1]: PG::UndefinedTable: ERROR: relation "products" does not exist 
2016-01-06T11:27:26.819331+00:00 app[web.1]: LINE 1: SELECT "products".* FROM "products" LIMIT 30 OFFSET 0 
2016-01-06T11:27:26.819332+00:00 app[web.1]:         ^
2016-01-06T11:27:26.819332+00:00 app[web.1]: : SELECT "products".* FROM "products" LIMIT 30 OFFSET 0 
2016-01-06T11:27:26.819793+00:00 app[web.1]: Rendered products/_product_display.html.erb (5.4ms) 
2016-01-06T11:27:26.819862+00:00 app[web.1]: Rendered products/home.html.erb within layouts/application (7.9ms) 
2016-01-06T11:27:26.819966+00:00 app[web.1]: Completed 500 Internal Server Error in 19ms 

我知道我的移民填满,如果我删除数据库我不能没有在本地得到同样的错误运行rake db:migrate。所以为了让他们工作我运行rake db:drop然后rake db:create然后rake db:schema:load。它加载架构和rake db:migrate作品。

有没有办法像Heroku一样在Heroku中加载架构?或者任何其他方式来使这个工作?

回答

0

通常,您应该能够像本地一样在Heroku上运行所有相同的rake命令(假设您的代码运行在两端)。

你试过:

heroku run rake db:drop 
heroku run rake db:create 
heroku run rake db:schema:load 
heroku run rake db:migrate 

或者是你想解决它不放弃你的Heroku数据库或类似的东西?

0

删除数据库在Heroku:

heroku pg:reset SHARED_DATABASE --confirm APP_NAME 

然后再迁移数据库:

heroku run rake db:migrate

希望这有助于。

0

尝试'heroku运行rake db:reset'然后'heroku运行rake db:migrate'。

这应该是