Ruby on rails rails控制台无法连接到临时环境中的数据库
我正在使用capistrano以环境名称“staging”部署Rails 4应用程序。当我ssh到服务器上并运行Ruby on rails rails控制台无法连接到临时环境中的数据库,ruby-on-rails,ruby-on-rails-4,console,Ruby On Rails,Ruby On Rails 4,Console,我正在使用capistrano以环境名称“staging”部署Rails 4应用程序。当我ssh到服务器上并运行rails控制台时,我确实提出了任何ActiveRecord查询没有这样的表。因此,我检查了我的Rails.env,确信它读的是development,而不是staging。但即使运行rails控制台staging,它也会将rails.env设置为“staging”,但ActiveRecord查询仍然表示没有这样的表。应用程序本身运行良好(在Apache和Passenger下),但由于
rails控制台
时,我确实提出了任何ActiveRecord查询没有这样的表
。因此,我检查了我的Rails.env
,确信它读的是development
,而不是staging
。但即使运行rails控制台staging
,它也会将rails.env
设置为“staging”,但ActiveRecord查询仍然表示没有这样的表。应用程序本身运行良好(在Apache和Passenger下),但由于某些原因,rails控制台无法连接到db
我回到了我知道它正在工作并且仍然看到错误的时候,这告诉我这是我必须在服务器上进行的配置更改,而不是更改rails应用程序代码或capistrano部署配置。好的,我自己找到了答案。RAILS_ENV最初被设置为staging in
/etc/environment
——但不久前,该文件在一些调试过程中被删除,而没有恢复
我仍然感到惊讶的是
rails console staging
不具有与相同的效果
export RAILS_ENV=staging
rails console
不管怎样,已经分类了