【问题标题】:Can't start rails server - sqlite3 adapter error无法启动 Rails 服务器 - sqlite3 适配器错误
【发布时间】:2014-11-29 06:20:57
【问题描述】:

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

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.

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

我的 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]

我正在使用 红宝石 2.1.3

当我输入

宝石清单

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

谁能指出我正确的方向?

【问题讨论】:

标签: ruby-on-rails ruby sqlite


【解决方案1】:

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

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

也不要忘记为你想在其中使用 sqlite3 的所有其他环境设置它。

【讨论】:

    【解决方案2】:

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

    adapter: sqlite3_adapter
    

    应该是:

    adapter: sqlite3
    

    编辑:忍者

    【讨论】:

      【解决方案3】:

      您可以将您的 sqlite3 gem 放到 Gemfile 中进行开发

      组:开发做
      宝石'sqlite3'
      //*您的其他宝石仅用于开发
      结束

      【讨论】:

        【解决方案4】:

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

        adapter: sqlite3
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-08-03
          • 1970-01-01
          • 2019-02-26
          • 2016-05-06
          • 2011-06-19
          相关资源
          最近更新 更多