У меня есть приложение на Heroku (в Rails 3.1). Когда я установил ActionMailer для отправки электронных писем, я получил ошибку Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true
.
Я исправил это так (ApplicationController):
before_filter :mailer_set_url_options
def mailer_set_url_options
ActionMailer::Base.default_url_options[:host] = request.host_with_port
end
Работает нормально. Но теперь мне нужно отправлять пару электронных писем каждый день в полночь, поэтому я вставил эту строку в задачу в scheduler.rake :
Mailer.notif_invoice(@inv_user, @invoice.id).deliver
И я получил эту ошибку:
`Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true`
Я получаю эту ошибку только в тот момент, когда хочу отправить электронное письмо на Scheduler
.
Не могли бы вы дать мне совет, как это исправить?
Я пытался добавить эту строку в свою задачу:
ActionMailer::Base.default_url_options[:host] = request.host_with_port
но я получил ошибку
rake aborted!
undefined local variable or method `request' for main:Object