繁体   English   中英

没有一个叫做“ activerecord-sqlite3-ruby-adapter”的gem

[英]No gem called “activerecord-sqlite3-ruby-adapter”

我正在尝试使用本机ruby 1.8在sqlite3数据库之上设置活动记录。 这应该足够容易地工作,我已经看到了很多解释它的示例。 我使用的是一些示例代码,它非常基本,并以以下几行开头:

require 'rubygems'
require 'active_record'
#require 'sqlite3-ruby'

...

ActiveRecord::Base.establish_connection(
    :adapter => "sqlite3-ruby",
    #:dbfile  => ":memory:"
    :database  => ":memory:"
    #:database  => "/home/fgysin/bender/gen2/metaDB/testing/sql3.db"
)

ActiveRecord::Schema.define do  
  create_table :albums do |table|
    table.column :title, :string
    table.column :performer, :string
  end

  create_table :tracks do |table|
    table.column :album_id, :integer
    table.column :track_number, :integer
    table.column :title, :string
  end
end


但是,当我运行此示例(它将创建一些表并打印一些简单的统计信息)时,出现以下错误:

/var/lib/gems/1.8/gems/activerecord-2.3.5/lib/active_record/connection_adapters/abstract/connection_specification.rb:
76:in `establish_connection':
Please install the sqlite3-ruby adapter:
`gem install activerecord-sqlite3-ruby-adapter`

(no such file to load -- active_record/connection_adapters/sqlite3-ruby_adapter) (RuntimeError)
from 2nd.generation/ActiveRecordExample.rb:8

我尝试安装该activerecord-sqlite ... gem,但在任何地方都找不到。 我用google搜索,但也没有发现该gem名称。

安装了与sqlite / activerecord相关的以下gem:
(我安装了“ activerecord”,“ sqlite3-ruby”和“ activerecord-jdbcsqlite3-adapter”,所有后者都将用于JRuby ...)

activerecord (2.3.5, 2.3.4, 2.2.2, 2.1.0)
activerecord-jdbc-adapter (0.9.2)
activerecord-jdbcsqlite3-adapter (0.9.2)
sqlite3-ruby (1.2.5)
dbd-sqlite3 (1.2.5)
jdbc-sqlite3 (3.6.3.054)

谁能建议我的问题的解决方案? 我真的看不到如何找到/安装sqlite3 / activerecord所需的适配器。 怎么称呼呢? 显然不是错误消息建议的适配器,因为在本地或存储库中找不到它。

只是在黑暗中打了一针,但您是否尝试过更改:

:adapter =>“ sqlite3-ruby”,

:adapter =>“ sqlite3”,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM