我一直在使用 Ruby 1.8 + Rails 2.3.5 和 oracle_enhanced,效果很好。
现在我最近在另一个文件夹中安装了 Ruby 1.9.2 和 Rails 3.0.3,但无法让它工作。
当我创建一个简单的应用程序并访问它时,页面返回以下错误:
请安装oracle_enhanced
适配器:gem install
activerecord-oracle_enhanced-adapter
(没有要加载的文件--
活动记录/连接适配器/oracle_enhanced_adapter)
我试图调查这个问题,发现Ruby正在使用的文件夹是C:\Ruby192\lib\ruby\gems\1.9.1\gems\activerecord-3.0.3\lib\active_record\connection_adapters。在该文件夹中没有 oracle_enhanced_adapter.br 文件。
该文件位于另一个文件夹中,C:\Ruby192\lib\ruby\gems\1.9.1\gems\activerecord-oracle_enhanced-adapter-1.3.1\lib\active_record\connection_adapters。我尝试将所有 rb 文件从该文件夹复制到另一个文件夹,但仍然出现错误,但它发生了变化:
请安装oracle_enhanced
适配器:gem install
activerecord-oracle_enhanced-adapter
(错误:ActiveRecord oracle_enhanced
适配器无法加载 ruby-oci8
图书馆。请安装 ruby-oci8
宝石。)
我注意到我的旧 Ruby 安装 (1.8) 具有相同的文件/文件夹结构,并且 oracle_enhanced 可以工作。
如果我在 IRB 上手动测试连接,它工作正常,问题仅出在 Rails 上。
有人有线索吗?
我现在使用的是Webrick,我的gem列表如下:
abstract (1.0.0)
actionmailer (3.0.3)
actionpack (3.0.3)
activemodel (3.0.3)
activerecord (3.0.3)
activerecord-oracle_enhanced-adapter (1.3.1)
activeresource (3.0.3)
activesupport (3.0.3)
arel (2.0.6)
builder (2.1.2)
bundler (1.0.7)
cgi_multipart_eof_fix (2.5.0)
erubis (2.6.6)
gem_plugin (0.2.3)
hoe (2.8.0)
i18n (0.5.0)
mail (2.2.13)
mime-types (1.16)
minitest (1.6.0)
mongrel (1.1.5 x86-mingw32)
oracle_enhanced (1.2.5)
polyglot (0.3.1)
rack (1.2.1)
rack-mount (0.6.13)
rack-test (0.5.6)
rails (3.0.3)
railties (3.0.3)
rake (0.8.7)
rdoc (2.5.8)
ruby-oci8 (2.0.4 x86-mingw32)
sqlite3-ruby (1.3.2 x86-mingw32)
thor (0.14.6)
treetop (1.4.9)
tzinfo (0.3.23)
谢谢。