1

我正在构建一个不使用任何数据库的 rails 4 应用程序。我通过删除 database.yml 并替换了一些在线指南,成功地在我的开发机器上禁用了 ActiveRecord

require 'rails/all'

require "action_controller/railtie"
require "action_mailer/railtie"
require "rails/test_unit/railtie"
require "sprockets/railtie"

它在本地工作,但是当我尝试在运行 unicorn 的服务器上部署它时,我在错误日志中得到了这个

ERROR -- : ActiveRecord::ConnectionNotEstablished (ActiveRecord::ConnectionNotEstablished)
/home/rtb/shared/bundle/ruby/2.0.0/gems/activerecord-4.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:546:in `retrieve_connection'

当我打开 database.yml 并启用 activerecord 时,该应用程序在生产独角兽服务器上运行良好。有什么我想念的吗?

4

1 回答 1

1

ConnectionManagementActiveRecord的中间件可能仍处于活动状态。该中间件管理每个请求的连接池。如果您没有加载 ActiveRecord,它不应该处于活动状态。

您可以在 Rails 配置中使用以下行手动删除中间件:

config.app_middleware.delete "ActiveRecord::ConnectionAdapters::ConnectionManagement"
于 2013-08-06T18:06:19.050 回答