我有一个使用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
答案 0 :(得分:0)
我采取的下一个调试步骤是尝试使用rvm安装全新版本的ruby。这很有用,所以我使用rvm用rvm remove 2.0.0-p598
完全删除旧版本的ruby,然后重新安装rvm install 2.0.0-p598
。
我仍然不知道可能发生了什么,但也许某些东西在gem caches / builds中被破坏了,所以如果有人遇到一个奇怪的错误,这样一切都到位但仍然无法正常工作,尝试使用rvm清除所有内容并重新安装。