Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 Rails是否向每个用户发送单独的电子邮件?_Ruby On Rails 3_Email_Devise_Actionmailer - Fatal编程技术网

Ruby on rails 3 Rails是否向每个用户发送单独的电子邮件?

Ruby on rails 3 Rails是否向每个用户发送单独的电子邮件?,ruby-on-rails-3,email,devise,actionmailer,Ruby On Rails 3,Email,Devise,Actionmailer,我在Rails 3应用程序中使用以下邮件程序一次发送大约100封电子邮件: def new_resource_notification(resource, user) @resource = resource @user = user mails = User.where(:email_subscribe => true).map(&:email) mail(:to => "admin@domain.com", :bcc => mails, :subje

我在Rails 3应用程序中使用以下邮件程序一次发送大约100封电子邮件:

def new_resource_notification(resource, user)
  @resource = resource
  @user = user
  mails = User.where(:email_subscribe => true).map(&:email)
  mail(:to => "admin@domain.com", :bcc => mails, :subject => "New item added")
end
当我查看发送电子邮件日志时,它会将每封电子邮件发送到
admin@domain.com
并按预期将所有用户添加到密件抄送字段

如果可能的话,我更愿意将每封电子邮件发送给用户,而不使用任何密件抄送条目


这是可能的和/或建议的吗?

是的,这是可能的,但您必须执行一个循环,向每个用户发送一封电子邮件。这将需要更多的资源,速度也会更慢;这就是为什么很多邮件发送者使用“密件抄送方式”,而不是发送单个电子邮件。

我刚刚意识到,它向每个用户发送电子邮件,但包括密件抄送字段中的每个用户。这意味着每个用户将收到此电子邮件一次X用户数。换句话说,它会向每个用户发送100次电子邮件。我不知道如何调用您的
新资源通知()
,但如果它向单个用户发送100封电子邮件,这意味着循环是在其他地方创建的,或者您的重源中有100个类似的地址?