【问题标题】:Why is 'Delayed::Job.all' not being recognized in the Ruby on Rails console?为什么在 Ruby on Rails 控制台中无法识别“Delayed::Job.all”?
【发布时间】:2012-07-01 14:29:33
【问题描述】:

我目前正在尝试查看延迟作业队列中的内容,但是当我在控制台中运行 Delayed::Job.all 时,我收到 NameError: uninitialized constant Delayed 错误。根据github页面上的readme,我应该可以运行正常的delayed_job命令了。

我目前使用的是 delayed_job_mongoid gem 版本 1.0.8。

这是我的 gemfile:

gem 'rails', '3.2.6'
gem 'unicorn'
gem 'mongoid', '3.0.0.rc'
gem 'bson_ext' # mongoid-related

gem 'bcrypt-ruby' # encryption
gem 'jquery-rails'
gem 'haml'

gem 'delayed_job_mongoid', :git => 'https://github.com/asavartsov/delayed_job_mongoid.git'

group :assets do
  gem 'uglifier', '>= 1.0.3'
end

group :development do
  gem 'rspec-rails'
  gem 'guard-rspec'
end

group :test do
  gem 'cucumber-rails', require: false
  gem 'capybara'
  gem 'database_cleaner'
  gem 'factory_girl_rails'
  gem 'mongoid-rspec'
  gem 'spork'
  gem 'guard-spork'
end

感谢您的帮助。

【问题讨论】:

  • 我只是尝试这样做并且成功了——我得到了一个 mongoid 标准。你在用笨蛋吗? rvm?你是如何运行 Rails 控制台的?
  • 你运行的是什么版本的 Mongoid?我在使用最新的delayed_job_mongoid gem 运行3.x 分支时遇到了一些问题,所以我最终使用了其他人已经修复的分支(git://github.com/asavartsov/delayed_job_mongoid.git)......跨度>
  • 您可能只在 Gemfile 的 :production 组中包含了延迟作业
  • 我在没有特定环境的情况下包含了delayed_job_mongoid,我正在使用/asavartsov/delayed_job_mongoid.git 的分叉分支。我没有使用 rvm 或 bungler

标签: ruby-on-rails mongoid delayed-job


【解决方案1】:

我复制粘贴了您的 Gemfile,它对我有用:

加载开发环境(Rails 3.2.6) 1.9.3p194:001 > 延迟::Job.all => #<:criteria>

您可以尝试包含 DelayedJob 本身(尽管 delayed_job_mongoid 在其 gemspec 中需要它),例如

gem 'delayed_job'

所以要么你在 config/initializers/*.rb 或者 config/application.rb 或 config/environments/production.rb 中有一些奇怪的东西

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多