2010-06-17 60 views
4

因此,如果我尝试直接使用动作邮件程序发送电子邮件,我可以使用所有应用程序帮助程序,如url_for,content_for等,但是当我尝试执行完全相同的操作时[发送电子邮件]与delayed_job [send_later]我得到一个延迟的作业失败,未定义的函数content_for等,所以它就像没有助手加载我的ActionMailer。我使用rails 2.3.8,active_mailer 2.3.8和delayed_job 2.0.3ActionMailer在从延迟作业调用时出现“未定义函数”失败

谢谢!!

回答

0

你的问题是,你的SW不是ActionView的孩子,因为你的SW没有作为网络请求的结果而被启动。相反,你的sw正在由DelayedJob机器启动。

解决方案:创建和使用自己的的ActionView实例 -

action_view = ActionView::Base.new # used for calling helper tags, eg link_to 
html = action_view.link_to(link_text, url) 
# etc...