首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Design.admin_mailer& config

Design.admin_mailer& config
EN

Stack Overflow用户
提问于 2014-12-07 00:16:11
回答 1查看 109关注 0票数 0

我使用的设计与我的rails 4应用程序。

我试着在网站上线之前设置figaro,但现在,我正在用production.rb中的密码管理我的测试电子邮件帐户。这条路不会持续太久,但我的设置出了问题。

我有两封admin_mailer电子邮件,当有人注册时,它们会被发送。一个是给我的电子邮件,使用一个gmail帐户让我知道他们已经注册了。第二个是发送给用户的电子邮件,欢迎他们访问该网站。它应该是从我设立的第二个电子邮件帐户发送的。

在我的production.rb中,我有:

代码语言:javascript
复制
 config.action_mailer.smtp_settings = {
    address:              'smtp.gmail.com',
    port:                 ###,
    domain:               'gmail.com',
    user_name:            'firstemailaddress@gmail.com',
    password:             '###',
    authentication:       'plain',
    enable_starttls_auto: true  }

     {
      address:              'smtp.gmail.com',
      port:                 ###,
      domain:               'gmail.com',
      user_name:            'secondemailaddress@gmail.com',
      password:             '####',
      authentication:       'plain',
      enable_starttls_auto: true  }

在我的admin_mailer中,我将邮件发件人设置为其中的一个或另一个用户名。

但是,当我运行代码时,这两封电子邮件都是从第一个电子邮件地址发送的。

有没有人知道如何设置邮件发送者,以便电子邮件从不同的地址发送?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-31 01:33:55

我认为每个邮件应该与一个电子邮件帐户相关联。您可以创建两个单独的邮件程序,并在每个单独的邮件程序中而不是在production.rb中定义smtp设置。

例如,app/mailers/first_mailer.rb:

代码语言:javascript
复制
class FirstMailer < ActionMailer::Base
  default from: 'firstemailaddress@gmail.com'
  self.delivery_method = :smtp
  self.smtp_settings = {
    # your gmail smtp settings here
  }

  def some_email(user)
    mail(to: user.email, subject: 'Subject')
  end
end

您可以通过调用FirstMailer.some_email(user).deliver发送此邮件。

类似地,然后创建另一个文件app/mailers/second_mailer.rb,它使用不同的帐户(以及不同的设置)。

也许有更干燥的方法来做这件事,但我知道这是可行的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27338098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档