Iam使用延迟作业进行邮件发送,当我尝试为特定邮件ID发送邮件时,它已经发送但是它不适用于一堆邮件ID,我在部分注册状态时使用了状态机完成了我必须发送邮件
section.rb
after_transition :on => :complete, :do => :academic_enrolment_completion_mail
def academic_enrolment_completion_mail
Delayed::Job.enqueue( EnrolmentsUpdateJob.new(self.id),5 )
end
EnrolmentsUpdateJob.rb
class EnrolmentsUpdateJob < Struct.new(:section_id, :academic)
def perform
Mailers.delay.academic_enrolments_completed_notification(:id)
end
Mailers.rb
mail(:to => array_user_emails, :subject => "Student non academic enrollments completed" )
当我在不使用delayedjob和其他控制器的情况下调用它时效果很好,为什么不在延迟工作?当我用一个邮件ID替换array_user_emails时也可以工作。为什么会这样?