Я пытался исправить это слишком много часов.Я посмотрел на Railscast, официальные руководства по Rails, множество постов в блоге, и ни одна из них не помогла.
Я пытаюсь отправить электронное письмо из приложения Rails 3 с помощью ActionMailer 2.2.5 через мой аккаунт Google Apps.Я проверил имя пользователя и пароль.Я вижу на консоли сообщение для отправки.Я получаю Тайм-аут :: Ошибка от доставить вызов в моем контроллере.
Может кто-нибудь пролить свет на это?
Воткод:
# config/environments/development.rb
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:enable_starttls_auto => true,
:tls => true,
:address => 'smtp.gmail.com',
:port => "587",
:authentication => :plain,
:domain => 'test.com',
:user_name => 'user@test.com',
:password => 'mypass'
}
# app/mailers/test_mailer.rb
class PostMailer < ActionMailer::Base
default :from => "no-reply@test.com"
def activate_email( post )
@post = post
mail( :to => post.email,
:subject => "Testing" )
end
end
# app/controllers/test_controller.rb
class TestController < ApplicationController
def create
@post = Post.new( params[:post] )
TestMailer.activate_email( @post ).deliver
end
end