使用设计确认设置Gmail

时间:2016-11-25 21:39:26

标签: ruby-on-rails ruby ruby-on-rails-4 devise gmail

我想设置一个Gmail帐户,以便在我的Ruby on Rails网站上注册时发送确认电子邮件和重置电子邮件。我现在只想使用gmail帐户,稍后切换到正确的noreply@mydomain.com。

我已经得到它在运行时没有出现任何错误。我可以创建一个帐户,它会生成正确的视图和所有内容,Mailcatcher说它会发送电子邮件。但是,它没有说电子邮件是在gmail帐户上发送的,也没有在收件箱或垃圾邮件文件夹中看到该邮件。

我尝试了很多指南和stackoverflow问题,但我似乎无法弄明白。例如thisthis和其他人,但没有运气。有什么帮助吗?

我使用...

设置/initializers/devise.rb文件
config.mailer_sender = 'shiplistconfrimation@gmail.com'
...
config.reconfirmable = false

然后我的development.rb文件就像这样......

  config.action_mailer.default_url_options = { :host => 'localhost:3000' }
  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {:address => "localhost", :port => 1025}
  ActionMailer::Base.smtp_settings = {
    :address              => "smtp.gmail.com",
    :port                 => 587,
    :domain               => "gmail.com",
    :user_name            => "shiplistconfrimation@gmail.com",
    :password             => "<PASSWORD>",
    :authentication       => "plain",
    :ssl                  => true,
    :tsl                  => true
    # :enable_starttls_auto => true # I don't have this, but it should work anyway
  }

将我的密码从此问题中移除。

1 个答案:

答案 0 :(得分:1)

做以下事情

在ActionMailer :: Base.smtp_settings

中添加

enable_starttls_auto: true

删除

config.action_mailer.smtp_settings = {:address => "localhost", :port => 1025}

这将解决您的问题