无法启动rails server - sqlite3适配器错误

时间:2014-10-04 10:03:28

标签: ruby-on-rails ruby sqlite

我正在尝试自学ruby on rails并且我正在尝试创建一个简单的应用程序。我正在http://guides.rubyonrails.org/getting_started.html#creating-a-new-rails-project上学习教程,但是在启动服务器时遇到了困难。当我尝试启动服务器并转到localhost时,

Could not load 'active_record/connection_adapters/sqlite3_adapter'. Make sure that the adapter in
config/database.yml is valid. If you use an adapter other than 'mysql', 'mysql2', 'postgresql' or
'sqlite3' add the necessary adapter gem to the Gemfile.

我试图在其他问题上找到解决方案/原因,但无济于事。

My Gemfile看起来像这样

source 'https://rubygems.org'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.6'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.3'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer',  platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more:
https://github.com/rails/turbolinks
gem 'turbolinks'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.0'
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0',          group: :doc

# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use unicorn as the app server
# gem 'unicorn'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

# Use debugger
# gem 'debugger', group: [:development, :test]

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin]

我正在使用 Ruby 2.1.3

当我输入

  

宝石清单

我发现我在跑步 铁轨4.1.6 sqlite3(1.3.9 x86-mingw32)

有人能指出我正确的方向吗?

4 个答案:

答案 0 :(得分:0)

确保config/database.yml为当前环境设置了适当的数据库驱动程序:

development:
  adapter: sqlite3 # check if you have sqlite3 here
  encoding: ...
  database: ...
  pool: ...
  username: ...
  password: ...

另外,不要忘记为要使用sqlite3的所有其他环境设置它。

答案 1 :(得分:0)

我从未使用过sqlite,但是从错误中我猜你在database.yml中有一行说:

adapter: sqlite3_adapter

应改为:

adapter: sqlite3

编辑:ninja'd

答案 2 :(得分:0)

您可以将您的sqlite3 gem放入Gemfile

中进行开发
  

组:开发做     gem'sqlite3'
   // *你的另一个宝石只有发展
  端

答案 3 :(得分:-1)

database.yml文件中的错误适配器。 用这个:

adapter: sqlite3