【问题标题】:Setting up a Gmail Account to work with ActionMailer in Rails 3在 Rails 3 中设置 Gmail 帐户以使用 ActionMailer
【发布时间】:2011-06-23 05:09:36
【问题描述】:

我有一个设置为向 Gmail 帐户发送电子邮件的联系页面表单。唯一的问题是它不会发送。我相信我已将错误范围缩小到我在初始化程序目录中的设置。

这些是我当前尝试设置标准 gmail 帐户以发送邮件的设置:

可能是我的域设置有误,还是我应该输入myemail@gmail.com 来输入:user_name?这是我第一次使用 ActionMailer,所以我真的不知道自己在做什么。有人可以帮帮我吗!?谢谢!

【问题讨论】:

  • 只要您有@gmail.com 地址,这些设置就可以完美运行。您可以发布您的邮件代码以及调用它的任何代码吗?
  • 我完全按照这个 RailsCast 教程进行操作,这就是为什么我认为这段代码会导致问题:因为它是唯一不同的地方。该教程可以在railscasts.com/episodes/206-action-mailer-in-rails-3找到

标签: ruby-on-rails-3 actionmailer


【解决方案1】:

如果您使用的是开发环境,请更改 development.rb 以引发交付错误,使用 config.action_mailer.raise_delivery_errors = true

另外,问题可能在于 :user_name 应该是整个电子邮件地址 (myemail@gmail.com),这就是 Gmail 对用户进行身份验证的方式。

【讨论】:

  • 我已启用该功能,并尝试在:user_name 字段中使用myemail@gmail.com,但在发送时它从未引发异常。
  • 我重新启动了 Rails 服务器并使用了myemail@gmail.com,它成功了!非常感谢!!!
【解决方案2】:

域不一定必须是“gmail.com”。您可以根据需要将自己的域放在这里。

【讨论】:

    【解决方案3】:

    您还需要指定 :from。我发现,如果您使用 .deliver 发送电子邮件,您不会因错误而出现异常。试试 .deliver!反而。使用 .deliver!你会得到有关问题的详细信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-29
      相关资源
      最近更新 更多