Подтвердить что ты не робот

Ошибка загрузки ярлыка Active Record с помощью приложения synatra с использованием RVM

Я установил gemset для RVM уровня проекта для приложения sinatra, с которого я начинаю подключаться к локальной базе данных с 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

(Взято из ответа на этот вопрос: Каков наилучший способ поговорить с базой данных при использовании 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 list и rvm current отображает правильный гемсет. Я новичок в RVM, и я думаю, что это связано с тем, что у него нет правильного пути загрузки, но я чувствую, что все правильно настроено, поэтому я буду благодарен за предложения о том, что случилось. Спасибо.

4b9b3361

Ответ 1

Насколько я могу судить, требуется, чтобы "activerecord" устарел. Попробуйте использовать

require 'active_record'

вместо.

Ответ 2

Если вы еще не установили атрибут activerecord, вы также получите эту ошибку:

Откройте командную строку и запустите эти команды в терминале:

#Find if the active record gem is already installed on your computer:
gem query --local

#See the downloadable gems, and see if activerecord is still available:
gem query --remote --name-matches activerecord

#Install your gem:
gem install --remote activerecord

#See if it installed successfully and is in the installed gem list:
gem query --local  

Вот какой код, который использует камень ActiveRecord, чтобы убедиться, что все настроено правильно:

#Ruby code
require 'active_record'
class Dog < ActiveRecord::Base
  has_many :dog_tags
end
puts "activerecord gem is installed";

Если все работает, оно будет печатать "immetecord gem установлен" без каких-либо ошибок.