1

我将 rails 应用程序升级到 rails(3.0.10) 并更新 gem 延迟作业。我更新了表delayed_job 的迁移,但不幸的是方法“.delay”不起作用。

NoMethodError: undefined method `delay' for #<User:0x10394d140>

我没有找到解决方案。我做了:“捆绑安装”,我重新启动了服务器,尝试安装为插件......

你有什么想法?

谢谢。

更新 :

我解决了这个问题,但创建了一个文件 config/initializer/delayed_job.rb

require 'delayed_job'
Delayed::Worker.backend = :active_record
4

1 回答 1

0

有时 gems 只是拒绝正确安装。我认为你应该做的是(假设你已经安装了 git,否则去这里https://github.com/tobi/delayed_job并下载delayed_job 作为zip 文件)

git clone https://github.com/tobi/delayed_job.git

把他在他的 lib 文件夹中的东西放在你的文件夹中。无论您需要在哪里使用他的方法,然后执行

require 'delayed_job'

在这些文件的顶部

我检查了本教程,它显示了一种在 rails 3 中设置的方法

http://www.dixis.com/?p=335

它建议在您的 gemfile 中使用它

gem "delayed_job",  :git => 'git://github.com/collectiveidea/delayed_job.git'

(如果它也不起作用,那么尝试我做的同样的事情,但是替换

git clone https://github.com/tobi/delayed_job.git 

git clone https://github.com/collectiveidea/delayed_job.git

告诉我是否有任何效果

于 2011-12-21T20:01:20.973 回答