【问题标题】:Rails: Sending email after filling contact formRails:填写联系表后发送电子邮件
【发布时间】:2015-05-22 11:23:18
【问题描述】:

我想使用this 教程创建联系表单

最后写的是我应该配置 SMTP,所以在 config/environments/developement.rb 我设置了

 config.action_mailer.default_url_options = {:host => 'myproject.c9.io'}

(我在 c9.io 上使用 rails)

ActionMailer::Base.smtp_settings = {
  :address              => "smtp.gmail.com",
  :port                 => 587,
  :domain               => "gmail.com",
  :user_name            => "myusername",
  :password             => "mypassword",
  :authentication       => "plain",
  :enable_starttls_auto => true
}

我是 Rails 的新手,尤其是在发送电子邮件方面,所以我想问一下,因为我在填写表格和发送时没有在我的电子邮件地址上收到消息,我应该怎么做才能得到确认的正确发送。我知道网上有很多教程,但现在我一头雾水,不胜感激。

【问题讨论】:

  • 添加,config.action_mailer.delivery_method = :smtp before config.action_mailer.default_url_options = {:host => 'myproject.c9.io'} 如果它不适合你,请告诉我:-) 不要忘记重启服务器。
  • 它有效,谢谢。但是我有一个问题,现在我收到了我发送的消息,但还有来自 的消息:传递给以下收件人永久失败。或许你知道是什么原因?
  • 很高兴来到这里。是的,您已向某人的电子邮件地址发送了一封电子邮件。确保该电子邮件地址确实存在。你忘了给我的评论投票:-)
  • 哦,我现在明白是怎么回事了 :) 谢谢!我想为你的评论点赞,但我没有箭头

标签: ruby-on-rails actionmailer mail-form


【解决方案1】:

将这些配置添加到你的 development.rb reference

config.action_mailer.default_url_options = {:host => 'myproject.c9.io'}

config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
  address:              'smtp.gmail.com',
  port:                 587,
  domain:               'gmail.com',
  user_name:            'myusername',
  password:             'mypassword',
  authentication:       'plain',
  enable_starttls_auto: true  
}

【讨论】:

  • 如果它进入垃圾邮件文件夹,请确保将您的 devise.rb 编辑为:initializer config.mailer_sender = 'youremail@gmail.com'
猜你喜欢
  • 1970-01-01
  • 2021-04-29
  • 1970-01-01
  • 2018-04-15
  • 2020-05-20
  • 2019-10-03
  • 2017-07-08
  • 1970-01-01
  • 2020-12-07
相关资源
最近更新 更多