Я видел видео RailsCasts о настройке ActionMailer для Rails 3. Однако у меня возникла ситуация, когда почтовый сервер (Lotus Notes), который мне нужно использовать, требует анонимного входа (где я не ввожу имя пользователя или пароль). Ниже я настроил файл инициализатора, контроллер и информацию о почтовой программе. Я не получаю никаких ошибок, когда отправляю электронное письмо, и я вижу, что электронное письмо создается и «отправляется» с терминала; однако письмо не доставляется. Что я делаю неправильно?
Файл инициализатора:
ActionMailer::Base.smtp_settings = {
:address => "smtp.home22.com",
:port => 25,
:domain => "home22.com",
:enable_starttls_auto => true
}
ActionMailer::Base.default_url_options[:host] = "localhost:3000"
Контроллер:
def send_alert()
@assessment = Assessment.first
AlertMailer.alert_notice(@assessment).deliver
respond_to do |format|
format.html {redirect_to :action => 'index'}
# format.html { render :action => (assessments_url) }
format.xml { head :ok }
end
end
Почтовая программа:
class AlertMailer < ActionMailer::Base
default :from => "Rails Application"
def alert_notice(assessment)
attachments["alert.csv"] = File.read("#{Rails.root}/public/alert.csv")
mail(:to => '[email protected]', :subject => 'Alert')
end
end