ruby-on-rails – Rails / ActiveRecord – AdapterNotSpecified,即使它是

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails / ActiveRecord – AdapterNotSpecified,即使它是前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在做 Ruby on Rails Tutorial.在前三章中它使用sqlite,但后来它建议在开发中使用Postgresql以便更容易地进行Heroku部署.在编辑我的database.yml和Gemfile以使用pg而不是sqlite3之后,它似乎有效 – 除非使用Rake运行测试.它会弹出AdapterNotSpecified错误.

C:/Ruby/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activerecord-4.0.0/lib/active_record/
connection_adapters / connection_specification.rb:52:in resolve_hash_connection’:
数据库配置未指定适配器(ActiveRecord :: AdapterNotSpecif
IED)

等等

database.yml指定了一个适配器,如下所示:

development:
  adapter: postgresql
  host: localhost
  username: nekkoru
  password: derpderp
  database: development
  encoding: UTF8

这是怎么回事?我使用的是Windows 7 x64,Ruby 1.9.3,Rails 4.0.0,Postgresql 9.3.0.1.

解决方法

您没有为测试环境定义数据库.您的database.yml文件应如下所示:
development:
  adapter: postgresql
  host: localhost
  username: nekkoru
  password: derpderp
  database: development
  encoding: UTF8

test:
  adapter: postgresql
  host: localhost
  username: nekkoru
  password: derpderp
  database: test        # or whatever the name is
  encoding: UTF8

猜你在找的Ruby相关文章