Сбой ActionMailer с «неопределенной функцией» при вызове из отложенного задания - PullRequest
4 голосов
/ 18 июня 2010

Так что, если я попытаюсь отправить электронное письмо с помощью программы действий непосредственно, я смогу использовать все помощники приложений, такие как url_for, content_for и т. Д., Но когда я пытаюсь сделать то же самое действие [отправка электронной почты] с delayed_job [send_later], я получаю задержкуне удалось выполнить задание с неопределенной функцией content_for и т. д., поэтому в моем ActionMailer не загружаются никакие помощники.Я использую рельсы 2.3.8, active_mailer 2.3.8 и delayed_job 2.0.3

Спасибо !!

1 Ответ

0 голосов
/ 18 июня 2010

Ваша проблема в том, что ваш 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...
...