Ruby on rails ActiveRecord::ConnectionNotEstablished(ActiveRecord::ConnectionNotEstablished)
我有一个使用mongodb的Rails应用程序。我想将其部署到Heroku,但出现错误:Ruby on rails ActiveRecord::ConnectionNotEstablished(ActiveRecord::ConnectionNotEstablished),ruby-on-rails,mongodb,heroku,mongoid,Ruby On Rails,Mongodb,Heroku,Mongoid,我有一个使用mongodb的Rails应用程序。我想将其部署到Heroku,但出现错误: Using sass-rails (3.2.5) Installing sqlite3 (1.3.5) with native extensions Unfortunately, a fatal error has occurred. Please report this error to the Bundler issue tracker at https://github.c
Using sass-rails (3.2.5)
Installing sqlite3 (1.3.5) with native extensions Unfortunately, a fatal error has occurred.
Please report this error to the Bundler issue tracker at https://github.com/carlhuda/bundler/issues
so that we can fix it. Thanks!
/usr/local/lib/ruby/1.9.1/rubygems/installer.rb:483:in `rescue in block in build_extensions':
ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)
我已经在我的Gemfile中对sqlite gem进行了注释:
# gem 'sqlite3'
现在它在heroku上正确部署,但在使用应用程序时出现错误:
[2012-03-21 12:53:46] INFO WEBrick::HTTPServer#start: pid=9896 port=3000
MONGODB [DEBUG] Logging level is currently :debug which could negatively impact client-side performance. You should set your logging level no lower than :info in production.
MONGODB (140ms) admin['$cmd'].find({:ismaster=>1}).limit(-1)
MONGODB (131ms) some['$cmd'].find({:getnonce=>1}).limit(-1)
MONGODB (131ms) some['$cmd'].find({"authenticate"=>1, "user"=>"some", "nonce"=>"92a826e37bab5cd5", "key"=>"524d2de26fd6416b7cb0cddc2f496a2c"}).limit(-1)
MONGODB (131ms) some['$cmd'].find({:getnonce=>1}).limit(-1)
MONGODB (132ms) some['$cmd'].find({"authenticate"=>1, "user"=>"some", "nonce"=>"6a49c4f59de3294d", "key"=>"f081eb178e341e88d014c045b45ad633"}).limit(-1)
Started GET "/docs" for 127.0.0.1 at 2012-03-21 12:53:53 +0400
ActiveRecord::ConnectionNotEstablished (ActiveRecord::ConnectionNotEstablished):
activerecord (3.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:374:in `retrieve_connection'
我如何解决我的问题
已更新
我在application.rb中包含了下一行,因此它看起来像:
require 'rails/all'
require "action_controller/railtie"
require "action_mailer/railtie"
require "active_resource/railtie"
require "rails/test_unit/railtie"
在config/application.rb中,您需要对ActiveRecord的要求进行注释:
# require "active_record/railtie"
如果您需要所有rails byrequire'rails/all'
您需要按所需的所有railtie将其拆分。举例来说,在我的应用程序中,使用Mongoid而不是ActiveRecord而不是ActionResources,我只有“rails/all”来代替:
# require 'rails/all'
# require "active_record/railtie"
require "action_controller/railtie"
require "action_mailer/railtie"
require "sprockets/railtie"
在config/application.rb中,您需要对ActiveRecord的要求进行注释:
# require "active_record/railtie"
如果您需要所有rails byrequire'rails/all'
您需要按所需的所有railtie将其拆分。举例来说,在我的应用程序中,使用Mongoid而不是ActiveRecord而不是ActionResources,我只有“rails/all”来代替:
# require 'rails/all'
# require "active_record/railtie"
require "action_controller/railtie"
require "action_mailer/railtie"
require "sprockets/railtie"
你在Application.rb中删除了ActiveRecord的要求吗?我已经更新了我的答案。删除活动记录是否足够?如果您需要活动记录?您需要删除此要求您是否删除了应用程序中对ActiveRecord的要求。rb?我已更新了我的答案。删除活动记录是否足够?如果您需要活动记录?你需要删除此要求谢谢它对我有帮助。我评论了require“active_record/railtie”和environments/*中的一些行。RB您也需要评论rails/的要求,因为您的回答中没有这样做。我用这些信息更新我的答案,谢谢它帮助了我。我评论了require“active_record/railtie”和environments/*中的一些行。RB您也需要评论rails/的要求,因为您的回答中没有这样做。我用这些信息更新我的答案