【问题标题】:Rails Send 2 different emails from one mailer functionRails 从一个邮件功能发送 2 封不同的电子邮件
【发布时间】:2013-01-21 12:45:22
【问题描述】:

我需要这样做,因为这对我来说似乎是合乎逻辑的:

def notification(vehicle) 
   @vehicle = vehicle

   mail(:to => @vehicle.owner.email_address, :template_name => "n_o")
   mail(:to => @vehicle.booker.email_address, :template_name => "n_b")

结束

问题是:我只收到最后封电子邮件。因此,在我上面的示例中,只有预订者会收到电子邮件,而不会向所有者发送任何内容。

有什么问题?如何解决?我应该创建两个单独的邮件功能,例如 notification_owner(vehicle) 和 notification_booker(vehicle),还是有更简单的解决方案?

谢谢!

【问题讨论】:

标签: ruby-on-rails ruby-on-rails-3 email actionmailer


【解决方案1】:

好的。所以,愚蠢的我,我忘了提到我正在处理delayed_jobs gem。所以,问题是,我忘了指定“.deliver!”每个“邮件”功能后的操作。

所以,它应该是这样的:

mail(:to => @vehicle.owner.email_address, :template_name => "n_o").deliver!
mail(:to => @vehicle.booker.email_address, :template_name => "n_b").deliver!

但还是这样。感谢您的支持!

【讨论】:

    【解决方案2】:

    试试:

    def notification(vehicle,template_name) 
      @vehicle = vehicle
      mail(:to => @vehicle.owner.email_address, :template_name => template_name)
    end
    
    
    Mailer.notification(@vehicle,"n_o").deliver 
    Mailer.notification(@vehicle,"n_b").deliver 
    

    【讨论】:

    • 为什么我会有相同的模板?这些电子邮件的内容因所有者和预订者而异。
    • 好的。我明白了。会试一试的。
    猜你喜欢
    • 2017-10-27
    • 2016-07-17
    • 2014-05-23
    • 2021-07-07
    • 2020-03-26
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    • 2015-06-15
    相关资源
    最近更新 更多