根据我认为的文档(每天下午 3 点)
daily.hour_of_day(15)
我得到的是一个随机的混乱。首先,无论何时我推送到 Heroku,它都会执行,然后似乎随机执行。所以对 Heroku 的最新推送是下午 1:30。它执行:下午 1:30 两次,下午 2 点一次,下午 4 点一次,下午 5 点一次。
想出了什么问题?
完整代码(注意这是为 Fist of Fury gem 准备的,但 FoF 深受 Sidetiq 的影响,因此 Sidetiq 用户的帮助也会很棒)。
class Outstanding
include SuckerPunch::Job
include FistOfFury::Recurrent
recurs { daily.hour_of_day(15) }
def perform
ActiveRecord::Base.connection_pool.with_connection do
# Auto email lenders every other day if they have outstanding requests
lender_array = Array.new
Inventory.where(id: (Borrow.where(status1:1).all.pluck("inventory_id"))).each { |i| lender_array << i.signup.id }
lender_array.uniq!
lender_array.each { |l| InventoryMailer.outstanding_request(l).deliver }
end
end
结尾