AnA*_*ice 6 ruby-on-rails delayed-job ruby-on-rails-3
我在这里使用delayed_job gem:https://github.com/collectiveidea/delayed_job
我在观察员中有以下内容:
UserMailer.delay.msg_notification(record)
Run Code Online (Sandbox Code Playgroud)
在user_mailer.rb中
class UserMailer < ActionMailer::Base
...
def msg_notification(record)
mail(
:to => "#{record.user.email}",
:subject => "Notification"
)
end
..
end
Run Code Online (Sandbox Code Playgroud)
但是这个错误有:
NoMethodError (undefined method `delay' for UserMailer:Class):
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?谢谢
我在我们的 Rails 应用程序上看到过这样的问题(2.3.8,但问题听起来是一样的)。基本上,延迟操作有以下三种方法:
MyClass.delay.foo(arg)handle_asynchronously :foo类定义放在 foo 的定义之后MyClass.send_later(:foo, arg)无论出于何种原因,#3 是唯一在我们所有开发机器上一致工作的形式。#1 在我们的开发服务器(Ubuntu)上死掉了;在我们设计师的 Mac 上排名第二。但#3 还好。
希望有帮助!
| 归档时间: |
|
| 查看次数: |
2461 次 |
| 最近记录: |