【发布时间】:2013-09-04 06:36:56
【问题描述】:
我在使用 delay 方法异步编写邮件通知过程时收到以下错误。
NoMethodError in SampleController#create
undefined method `delay' for UserMailer:Class
我的控制器中有以下代码。
UserMailer.delay.idea_author_notification(self,nfication)
我已经安装了delayed_job gem,也使用jobs:work rake 任务启动了delayed_job。
是否需要对使用延迟方法在后台执行邮件相关代码做一些其他更改?
请尽快帮我解决这个问题..
在此先感谢...
【问题讨论】:
-
运行bundle后,你重启了你的服务器吗?每次在 Gemfile 中添加新 gem 时都需要这样做。
-
您是否使用
require 'delayed_job'并重新启动服务器,请在您的Gemfile 中使用gem "delayed_job", :git => 'git://github.com/collectiveidea/delayed_job.git' -
我使用的是 Rails 2.3.5。所以我尝试了delayed_job 2.0.8 版本。我也重新启动了服务器。但是延迟方法仍然存在问题。
-
仅供参考,如果是 rails 2.3.5,不应该是
deliver_idea_author_notification确保不能解决问题,但仍然 -
请附上您的邮件代码
标签: ruby-on-rails backgroundworker delay delayed-job