У меня есть планировщик rufus, и я планировал просмотреть таблицу расписаний для новых расписаний. Есть способ сделать это? что-то вроде:
schedule.every "1m" do
#check for new entries in database
end
ОТВЕТИЛ
scheduler.every '1m' do
#check for new stuff in the database
newest_jobs = Schedule.all_cron_jobs.select{ |x| x.created_at > 1.minute.ago } - all_schedules_with_cron
unless newest_jobs.empty?
newest_jobs.each do |new_job|
scheduler.every new_job.cron_string do
job.call
end
end
end
end
jobs.call - это вызов отложенного задания, чтобы поставить его в очередь. Таким образом, в основном, получите самые новые расписания и вызовите для них rufus, чтобы ставить задания в очередь каждый раз, когда cron соответствует