部署在Heroku上的Rails应用程序写入localhost数据库并重定向到localhost视图

时间:2017-08-02 08:20:52

标签: ruby-on-rails heroku environment

我最近向Heroku部署了一个RoR应用程序。 该应用程序加载正常。 我有一个'新'动作,通过表单提交(POST)创建一个新的模型记录 问题是: 在提交时,控制器写入我的本地数据库并重定向到与控制器操作对应的本地视图:http://localhost:3000/mycontroller/myview

我的生产数据库是空的!什么导致这个和修复?为什么我在Heroku上的远程部署访问localhost ???

我只需要在Heroku上制作。

advTHANXance!

2 个答案:

答案 0 :(得分:0)

你试过吗

RAILS_ENV=production rails db:create
RAILS_ENV=production rails db:migrate

但是如果你不运行这两个,你肯定会遇到迁移错误。

请提供有关错误的一些详细信息。

答案 1 :(得分:0)

1) Check if you have a postgres plugin in heroku console

2) Secondly when you push check if you get any error related to PG .

3) dont forget to do heroku restart --app appname

4) login to heroku using **heroku bash** and then run rails c, then check that what database you are using 

for it use the command
ActiveRecord::Base.connection_config

现在你会得到像

这样的回复
{:adapter=>ADAPTER_NAME, :host=>HOST, :port=>PORT, 
    :database=>DB, :pool=>POOL, :username=>USERNAME, 
    :password=>PASSWORD} 

如果您在heroku仪表板数据库名称中看到dbname作为名称 如果它是相同的,那么你使用的数据库就是生产。 并转移到本地,重新检查您的路线并清除您的缓存,这是唯一的原因。