Rails アプリで電子メール アクションをセットアップしようとしていますが、メール機能をローカルでテストしたいと考えています。この Railscastに従いましたが、メールTimeout::Error(execution expired)
を送信しようとするとエラーが発生します。
config/environments/development.rb
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config/initializers/setup_mail.rb
ActionMailer::Base.smtp_settings = {
:address => 'smtp.gmail.com',
:port => 587,
:domain => 'recipes.dev',
:user_name => 'myemail@gmail.com',
:password => '*******',
:authentication => 'plain',
:enable_starttls_auto => true
}
mailers/user_mailer.rb
class UserMailer < ActionMailer::Base
default from: "myemail@gmail.com"
def test_email(user)
@email = user.email
@name = user.name
mail(:to => @email, :subject => 'test e-mail')
end
end
コントローラー/users_controller.rb
UserMailer.test_email(@user).deliver
どんな助けでも大歓迎です。