Мне нужно запустить запланированную задачу в Heroku, используя каждый раз. Моя первая работа cron в Rails! :-)
Локально он работает нормально, но как заставить его работать в Heroku?
Я пробовал это: heroku запускать всякий раз, когда --update-crontab store
но...
[ошибка] Не удалось записать crontab; попробуйте запустить `when 'без параметров, чтобы убедиться, что ваш файл расписания действителен.
Я также добавил Heroku Scheduler в свое приложение на Heroku.
Это мой config / schedule.rb
RAILS_ROOT = File.dirname(__FILE__) + '/..'
require File.expand_path(File.dirname(__FILE__) + "/environment")
every :day, :at => "11:00am" do
@appointments = Appointment.where('date between ? and ?', Date.today, Date.today + 2.day)
@appointments.each do |appointment|
@emails = []
@informated_people = InformatedPerson.where(person_id: appointment.person_id)
@users = User.find(Authorization.where(:person_id => appointment.person_id).pluck(:user_id))
@person = Person.find(appointment.person_id)
@emails << @person.email
@informated_people.each do |informated_person|
@emails << informated_person.email
end
@users.each do |user|
@emails << user.email
end
UserEmail.appointment_reminder_email(@emails.uniq, @person , 'Cita para el día ' + appointment.date.strftime("%d/%m/%Y %H:%M") + ' con el doctor ' + appointment.doctor + ' para la especialidad ' + appointment.specialty + ' en el centro ' + appointment.center + '.' ).deliver
end
end