[英]Rails Action Mailer ArgumentError with SMTP
I am trying to send an email to multiple recipients: 我正在尝试向多个收件人发送电子邮件:
class SubscriberMailer < ApplicationMailer
default from: "email@gmail.com"
default to: Subscriber.all.map { |sub| sub.email }
def newsletter(subscriber)
@subscriber = subscriber
mail subject: "New newsletter"
end
end
in NewslettersController: 在NewslettersController中:
def send(newsletter)
@subscribers = Subscriber.all
SubscriberMailer.newsletter(@subscribers).deliver
end
I am getting an error: 我收到一个错误:
ArgumentError in NewslettersController#index
An SMTP To address is required to send a message. Set the message smtp_envelope_to, to, cc, or bcc address.
Thanks for help! 感谢帮助!
Change your default to:
: 将您的default to:
更改default to:
::
class SubscriberMailer < ApplicationMailer
default from: "email@gmail.com"
default to: Subscriber.pluck(:email).join(', ')
# some code here
end
It isn't about SMTP
与SMTP
无关
Something in your Subscriber.all.map { |sub| sub.email }
您的Subscriber.all.map { |sub| sub.email }
Subscriber.all.map { |sub| sub.email }
is not working. Subscriber.all.map { |sub| sub.email }
不起作用。 Do you use a real, working address? 您使用真实的工作地址吗? If not, try with one. 如果没有,请尝试一个。
And if all emails are real ones, then you may try something like 如果所有电子邮件都是真实的,那么您可以尝试类似
default to: Subscriber.all.collect(&:email).join(",")
Hope it helps! 希望能帮助到你!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.