【发布时间】:2019-02-14 08:42:10
【问题描述】:
我在lib/tasks/scheduler.rake 的 rake 任务中设置了以下邮件:
desc "Send capsule reminder emails"
task send_capsule_reminders: :environment do
require 'time'
t = Time.now.in_time_zone("Pacific Time (US & Canada)").next_day
month = t.month
day = t.day
Capsule.all.each do |capsule|
if month == capsule.capsule_date.month && day == capsule.capsule_date.day && capsule.active && capsule.reminder_email
NewCapsuleReminderMailer.send_capsule_reminder_email(capsule).deliver
end
end
end
我已经从控制台测试了NewCapsuleReminderMailer.send_capsule_reminder_email(capsule).deliver,它可以正确发送邮件。
我检查了month == capsule.capsule_date.month 和day == capsule.capsule_date。 capsule.active 也是 true 和 capsule.reminder_email。
但是,当我运行 rake send_capsule_reminders 时,什么也没有发生。
谁能帮我弄清楚为什么这没有发送以及如何解决它?
【问题讨论】:
标签: ruby-on-rails rake actionmailer rake-task