在Rails中使用发送网格批量发送电子邮件

新手

语境:

我需要使用Rails应用程序中的send grid发送批量电子邮件。我将向大约300个订户发送电子邮件。我读过它可以使用完成

headers["X-SMTPAPI"] = { :to => array_of_recipients }.to_json

我已经尝试遵循。

以下是我的ActionMailer:

class NewJobMailer < ActionMailer::Base
  default from: "[email protected]"

  def new_job_post(subscribers)
    @greeting = "Hi"
    headers['X-SMTPAPI'] = { :to => subscribers.to_a }.to_json
    mail(
    :to => "[email protected]",
    :subject => "New Job Posted!"
    )

  end

end

我从控制器调用此mailer方法

..
   @subscribers = Subscriber.where(activated: true)
   NewJobMailer.new_job_post(@subscribers).deliver
..

send-grid的配置在config / production.rb文件中指定,并且是正确的,因为我可以发送帐户激活电子邮件。

问题:

该应用程序运行正常,不会在任何地方崩溃,但是电子邮件并未发送出去。我猜标题配置没有被传递?我该如何纠正呢?

更新:

我在发送网格仪表板中检查了电子邮件活动。这是其中一封被丢弃的电子邮件的快照:在此处输入图片说明

乙二胺

您正在使用一个ActiveRecord对象数组

@subscribers = Subscriber.where(activated: true)

并将其传递到smtpapi标头中。您需要提取那些ActiveRecord对象的电子邮件地址。

取决于您所说的email领域,可以通过以下方式完成此操作

headers['X-SMTPAPI'] = { :to => subscribers.map(&:email) }.to_json

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Rails中使用发送网格批量发送电子邮件

来自分类Dev

使用Swiftmailer批量发送电子邮件

来自分类Dev

在laravel中使用mailgun发送电子邮件

来自分类Dev

在.NET中使用Google SMTP发送电子邮件

来自分类Dev

在python中使用Google SMTP发送电子邮件

来自分类Dev

在freebsd中使用sendmail发送电子邮件

来自分类Dev

在Java中使用Gmail API发送电子邮件

来自分类Dev

在 Python 中使用 iCloud 发送电子邮件

来自分类Dev

Rails 4,不使用sendmail发送电子邮件

来自分类Dev

使用Shoppe gem + Rails发送电子邮件

来自分类Dev

在Rails应用程序中使用Google标记发送电子邮件

来自分类Dev

使用sendmail发送电子邮件

来自分类Dev

使用php发送电子邮件

来自分类Dev

使用mail()发送电子邮件

来自分类Dev

使用nodemailer发送电子邮件

来自分类Dev

使用VBScript发送电子邮件

来自分类Dev

使用nodemailer发送电子邮件

来自分类Dev

使用Gradle发送电子邮件

来自分类Dev

使用Javax发送电子邮件?

来自分类Dev

使用SSL发送电子邮件

来自分类Dev

使用Phonegap发送电子邮件

来自分类Dev

使用SwiftUI发送电子邮件

来自分类Dev

使用sendmail发送电子邮件

来自分类Dev

使用Telnet发送电子邮件

来自分类Dev

使用SSL发送电子邮件

来自分类Dev

使用Gradle发送电子邮件

来自分类Dev

使用 netcat 发送电子邮件

来自分类Dev

使用 Lua 发送电子邮件

来自分类Dev

使用 TcpClient 发送电子邮件