Raylarım 3.0.10 projemde "bize ulaşın" formu uygulamaya çalışıyorum. RailsGuides'i takiben bir mailer oluşturdum.Mailler postacıda sendugrid ile hata ayıklamanın bir yolu var mı? Veya postaların gerçekten gönderilip gönderilmediğini kontrol etmek için mi?
if @question.valid?
QuestionMailer.ask(@question).deliver
redirect_to root_url, :notice => "Сообщение отправлено"
else
Production.rb: Ben almadım ben ilk başta bu yapılandırma var, ama yoktu
config.action_mailer.delivery_method = :smtp
config.action_mailer.default_url_options = { :host => '%mydomain%' }
ActionMailer::Base.smtp_settings = {
:address => "smtp.sendgrid.net",
:port => "25",
:authentication => :plain,
:user_name => ENV['SENDGRID_USERNAME'],
:password => ENV['SENDGRID_PASSWORD'],
:domain => ENV['SENDGRID_DOMAIN']
}
benim denetleyicisi olarak
class QuestionMailer < ActionMailer::Base
default :to => "%[email protected]" #gmail for domains
def ask(message)
@content = message.content
unless message.name.nil? or message.name.empty?
from = "#{message.name} <#{message.email}>"
else
from = message.email
end
mail(:subject => message.subject, :from => from)
end
end
Ben bu satırları var e-posta ekledim.
Sorun, Heroku günlüğünün, ilgili görünümün işlendiğini ancak e-postayı almamın söylendiğini söylüyor. Sendgrid kullandığım için yerel olarak test edemiyorum.
upd kendine
Not. Etki alanı hesabı için gmail oluşturduktan sonra, DNS ayarlarınızı unutmayın. > _ <