无法加载'active_record / connection_adapters / postgresql_adapter'

时间:2015-04-15 11:00:34

标签: ruby postgresql gem

我有一个使用Postgres通过Activerecord的Sinatra应用程序。我在Mac上使用RVM和许多宝石,包括:

activerecord
activesupport

当我运行服务器(瘦)时,出现错误:

  

无法加载' active_record / connection_adapters / postgresql_adapter'。   确保config / database.yml中的适配器有效。如果你使用   除了' mysql',' mysql2',' postgresql'以外的适配器或者' sqlite3'加   Gemfile的必要适配器gem。

配置中的适配器设置为postgresql,我已经检查了我的RVM和路径:我的Gem安装路径设置正确,我可以看到正确安装了相应的gems,并且具体适配器也在那里,所以真的不确定会发生什么或如何进一步解决这个问题?

使用Ruby 2.0.0-p598,activerecord和activesupport 4.1.4

-

进一步调试尝试:

ruby -v

  

ruby​​ 2.0.0p598(2014-11-13修订版48408)[x86_64-darwin14.0.0]

which ruby

  

/Users/user/.rvm/rubies/ruby-2.0.0-p598/bin/ruby

gem env(相关部分):

  
      
  • 可执行目录:/Users/user/.rvm/gems/ruby-2.0.0-p598/bin
  •   
  • GEM路径:

         
        
    • /Users/user/.rvm/gems/ruby-2.0.0-p598
    •   
    • /Users/user/.rvm/gems/ruby-2.0.0-p598@global
    •   
  •   
  • SHELL PATH:

         
        
    • /Users/user/.rvm/gems/ruby-2.0.0-p598/bin
    •   
    • /Users/user/.rvm/gems/ruby-2.0.0-p598@global/bin
    •   
    • /Users/user/.rvm/rubies/ruby-2.0.0-p598/bin
    •   
  •   

ls $GEM_HOME/gems

  

了activerecord-4.1.4   的ActiveSupport-4.1.4

对于我可以研究的其他内容真的感到茫然


database.yml

development:
  adapter: postgresql
  database: example_db
  username: example_user
  password: example_password
  host: localhost

1 个答案:

答案 0 :(得分:0)

我采取的下一个调试步骤是尝试使用rvm安装全新版本的ruby。这很有用,所以我使用rvm用rvm remove 2.0.0-p598完全删除旧版本的ruby,然后重新安装rvm install 2.0.0-p598

我仍然不知道可能发生了什么,但也许某些东西在gem caches / builds中被破坏了,所以如果有人遇到一个奇怪的错误,这样一切都到位但仍然无法正常工作,尝试使用rvm清除所有内容并重新安装。