2014-03-07 2 views
0

Я пытаюсь интегрировать Sidekiq с моим Rails Mongoid. Я выполнял следующие шаги: HereSidekiq Install - неинициализированная константа ActiveRecord :: Base (NameError)

У меня также есть redis & mongodb работает локально. Однако после того, как я бегу пакет, а затем, когда я пытаюсь запустить свой сервер, я получаю эту ошибку ....

c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/sidekiq-2.17.7/lib/sidekiq/rails.rb:4:in `hook_rails!': uninitialized constant ActiveRecord::Base (NameError) 
    from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/sidekiq-2.17.7/lib/sidekiq/rails.rb:16:in `block in <class:Rails>' 
    from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `instance_exec' 
    from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `run' 
    from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:55:in `block in run_initializers' 
    from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `each' 
    from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `run_initializers' 
    from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/application.rb:136:in `initialize!' 
    from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-3.2.13/lib/rails/railtie/configurable.rb:30:in `method_missing' 
    from C:/Users/example/Documents/Workspace/app/config/environment.rb:5:in `<top (required)>' 

Мой файл environment.rb выглядит следующим образом ...

# Load the rails application 
require File.expand_path('../application', __FILE__) 

# Initialize the rails application 
App::Application.initialize! 

Я ранее был спасательное с redis, работающим с mongoid в этом приложении, поэтому его проблема sidekiq. У меня нет файла database.yml, так как я использую mongoid. Я также добавил шаги для kiqstand, но я получаю ту же ошибку. Не знаете, как решить проблему?

Редактировать: Я на 90% уверен, что потому, что Sidekiq ищет ActiveRecord, однако я удалил ActiveRecord, потому что вместо этого я использую Mongo. Мой application.rb имеет ...

# remove activerecord and run off of mongo only 
#require 'rails/all' 
#http://stackoverflow.com/a/9327651/1026266 
%w(
    action_controller 
    action_mailer 
    active_resource 
    rails/test_unit 
    sprockets 
).each do |framework| 
    begin 
    require "#{framework}/railtie" 
    rescue LoadError 
    end 
end 

Теперь мне просто нужно, чтобы выяснить, как сказать sidekiq, чтобы не искать его?

ответ

0

Отсутствие ActiveRecord была проблема, похоже, что запрос был тянуть - https://github.com/mperham/sidekiq/pull/1090

Но это было отвергнуто, так что я просто должен был добавить ActiveRecord в мое приложение и добавить фиктивный файл database.yml.

Смежные вопросы