Ruby on rails 执行ActionMailer::DeliveryJob时出错
我试图在每次创建用户时发送电子邮件,但我就是不能。我已经学习了许多教程和相同错误的主题。 我也在控制台上试过,同样的结果:Ruby on rails 执行ActionMailer::DeliveryJob时出错,ruby-on-rails,Ruby On Rails,我试图在每次创建用户时发送电子邮件,但我就是不能。我已经学习了许多教程和相同错误的主题。 我也在控制台上试过,同样的结果: TesteMailer.welcome_email(User.first).deliver_later 它返回: 从10485.78ms中的异步(邮件程序)执行ActionMailer::DeliveryJob(作业ID:e536b95d-fab5-4f9d-82ac-b2af12336fc2)时出错:EOFError(到达文件末尾): 我也试过了 TesteMailer
TesteMailer.welcome_email(User.first).deliver_later
它返回:
从10485.78ms中的异步(邮件程序)执行ActionMailer::DeliveryJob(作业ID:e536b95d-fab5-4f9d-82ac-b2af12336fc2)时出错:EOFError(到达文件末尾):
我也试过了
TesteMailer.welcome_email(User.first).deliver_now
或者只是
TesteMailer.welcome_email(User.first).deliver
两者都返回
EOFError:已到达文件结尾
这是我的SMTP配置:
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 465,
domain: 'gmail.com',
user_name: '...@gmail.com',
password: '...',
authentication: 'plain',
enable_starttls_auto: true }
我还尝试使用SMPT端口587并替换
config.action_mailer
借
我正在使用Ruby 2.3.3p222和Rails 5.1.2
编辑
在希罗库也是这样
2017-12-08T19:46:26.548061+00:00应用程序[web.1]:E[2017-12-08T19:46:26.547992#4]错误--:[ActiveJob][ActionMailer::DeliveryJob][52dac876-c9a0-4c69-958b-0c08ec75f2af]从10548.59ms中的异步(邮件程序)执行ActionMailer::DeliveryJob(作业ID:52DAC9A0-4c69-958b-0c08ec75f2af)时出错:已到达文件末尾):
解决方案
我通过向gem文件中添加gem'mail'、“~>2.7”解决了这个问题
感谢所有人显示您的测试邮件程序代码。请共享您的邮件程序代码。可能的问题是您为邮件程序设置的发件人地址无效。因此,请查看您是否已从地址设置了有效的
。如果您未设置,默认值将是example.com
,这就是它可能失败的原因。请您澄清一下-您刚刚将该行添加到GEM文件中,或者您还进行了任何进一步的设置?我不记得了,我想我只是添加了这一行并运行了bundleAh,我明白了。无论如何谢谢你!仅供参考,我仍然收到此eoferor(已到达文件末尾)
邮件版本2.7.1
错误。所以我认为这不是解决办法。
ActionMailer::Base