我有一个控制器操作可以创建提醒,我正在通过@event
和@users
来检查用户并检查他们是否已选中提醒复选框,默认情况下我已设置它是真的。
这是为了检查我想要收到电子邮件的用户,并在邮件中向他们发送电子邮件,但是这样做不起作用。它会在不发送电子邮件的情况下清除队列。
def create
ReminderMailer.delay(queue: "#{@event.name}_letter", run_at: 1.minutes.from_now).events_reminder(@event,@users)
end
在我的邮件中,我有这个:
def events_reminder(event,users)
@event = event
@users = users
users.each do |user|
if user.eventReminder == true
mail to: user.email, subject: "Reminder"
end
end
end
它会创建队列,但不会发送电子邮件。
我是否面临此用户遇到的问题?
答案 0 :(得分:0)
7天后:/!在文档中找到了解决方案...当他们说RTFM时就是如此:)!
以下是解决方案:
2.3.3向多个收件人发送电子邮件
可以通过一封电子邮件向一个或多个收件人发送电子邮件 (例如,通过设置列表来通知所有管理员新的注册) 发送电子邮件至:to key。电子邮件列表可以是一系列电子邮件 地址或单个字符串,地址用逗号分隔。
class AdminMailer < ActionMailer::Base
default to: Proc.new { Admin.pluck(:email) },
from: 'notification@example.com'
def new_registration(user)
@user = user
mail(subject: "New User Signup: #{@user.email}")
end
end
http://edgeguides.rubyonrails.org/action_mailer_basics.html#action-mailer-callbacks