我为我开始的sinatra应用程序设置了一个项目级别的RVM gemset,它将连接到具有Active Record的本地数据库.为了测试它我尝试运行以下测试应用程序:
test.rb
require 'rubygems' # may not be needed,depending on platform require 'sinatra' require 'activerecord' class Article < ActiveRecord::Base end get '/' do Test.establish_connection( :adapter => "sqlite3",:database => "hw.db" ) Test.first.content end
(摘自这个问题的答案:What’s the best way to talk to a database while using Sinatra?)
当我运行ruby -rubygems test.rb时出现此错误:
/Users/[user]/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- activerecord (LoadError)
我已经安装了Active Record gem,它显示在gem列表中,rvm current显示正确的gemset.我是RVM的新手,我认为这与它没有正确的加载路径有关,但我觉得我已经正确设置了所有内容,所以我很欣赏有关错误的建议.谢谢.
解决方法
据我所知,’activerecord’已被弃用.尝试使用
require 'active_record'
代替.