Ruby on Rails:每当使用delayed_job gem时获取NameError

时间:2011-10-04 02:54:09

标签: ruby-on-rails ruby-on-rails-3 rubygems delayed-job

完全难以接受这一点,并希望一些RoR专家可以提供帮助。

遇到这个奇怪的错误,如果我安装delayed_job gem,我的网站(开发环境)就会停止工作。所有控制器和方法都将显示NameError异常:

NameError in ProductsController#show
cannot remove Object::ClassMethods

我知道它是delayed_job gem,因为如果我将其卸载或注释掉,重启服务器,错误就会消失。

我的gemfile如下所示:

source 'http://rubygems.org'

gem 'rails', '3.0.10'

# Bundle edge Rails instead:

gem 'delayed_job', "2.1.4"
gem 'sqlite3'
gem 'faker', '0.3.1'
gem 'webrat', '0.7.1'
gem 'will_paginate', '3.0.pre2'
gem "amazon_product", "3.0.0.pre.2" #http://code.papercavalier.com/amazon_product/ 
gem "curb"
gem "authlogic"
gem "omniauth", ">=0.2.6"
gem "faraday"#, ">=0.7.4"
gem "fb_graph"
gem "twitter"#, "~> 1.7.1"

我正在使用Ruby 1.8.7和Rails 3.0.10。

如果你知道可能出现什么问题,请帮助:)

1 个答案:

答案 0 :(得分:1)

我弄清楚罪魁祸首是什么。在我的控制器中,我在顶部包含“#include ActionView :: Helpers :: TextHelper”,所以我可以使用truncate函数。包括那显然会导致一些与delayed_job的命名冲突。删除包含解决了我的问题。

相关问题