0


使用延迟方法异步编写邮件通知过程时出现以下错误。

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。

我是否需要做一些其他更改才能使用延迟方法在后台执行邮件相关代码?

请尽快帮我解决这个问题..

先谢谢了...

4

1 回答 1

-2

任何动作邮件程序类都不存在方法延迟。因此,您不能为UserMailer:Class调用该方法。

为此,您可以在 rails 控制台中检查 mailer 类的所有方法。即
UserMailer.methods
并检查特定方法是否存在,运行以下行。

UserMailer.methods.include?(:delay)
以上行返回false

或者

如果您想使用延迟作业,请通过 github 中的以下链接。它肯定会帮助你。

delay_jobs_for_rails2.xx

于 2013-09-04T06:48:43.990 回答