【问题标题】:Rails 4 Unicorn Serve App Without ActiveRecord没有 ActiveRecord 的 Rails 4 Unicorn 服务应用程序
【发布时间】:2013-07-31 02:12:20
【问题描述】:

我正在构建一个不使用任何数据库的 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 时,该应用程序在生产独角兽服务器上运行良好。有什么我遗漏的吗?

【问题讨论】:

  • 您能粘贴完整的堆栈跟踪吗?

标签: ruby-on-rails deployment ruby-on-rails-4 unicorn


【解决方案1】:

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

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

config.app_middleware.delete "ActiveRecord::ConnectionAdapters::ConnectionManagement"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-10
    • 2015-08-15
    • 2014-02-26
    • 2015-04-03
    • 1970-01-01
    • 2012-03-31
    • 2014-02-02
    相关资源
    最近更新 更多