使用ruby,sinatra& s问题时使用sqlite3 gem耙

时间:2015-09-04 10:16:50

标签: ruby sqlite sinatra sinatra-activerecord

我的Gemfile中有sqlite3 gem。运行'捆绑安装'工作没有错误。使用Rake运行dababase迁移时:

rake db:create_migration NAME=create_messages

我收到以下错误:

rake aborted!
LoadError: Could not load 'active_record/connection_adapters/sqlite_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.

我甚至尝试用1.3.3指定sqlite3,然后在Gemfile中指定1.3.4版本,但是没有解决问题。 Ruby版本是1.9.3

以下是来自我的environment.rb文件:

configure :development do
 set :database, 'sqlite:///dev.db'
 set :show_exceptions, true
end

以下是来自Gemfile:

source 'https://rubygems.org'
#ruby "1.9.3"

gem "sinatra"
gem "activerecord"
gem "sinatra-activerecord"
gem 'sinatra-flash'
gem 'sinatra-redirect-with-flash'

group :development do
 gem 'sqlite3-ruby'
 gem "tux"
end

我也尝试用sqlite3代替sqlite3-ruby,但这并没有解决问题。

2 个答案:

答案 0 :(得分:2)

试试这个!

set :database, 'sqlite3:///dev.db'

答案 1 :(得分:0)

在升级到ruby v2.2.1并再次更新所有gem之后,这已经过了。我通过RVM安装了v2.2.1。