我正在进行佣金任务。我希望计划在每个月的每个第4个星期日运行该任务。我正在使用宝石。如何在config/schedule.rb
中定义逻辑,以便它在Rails中每个月的第4个星期日运行?请帮帮我。
这是我的佣金任务app/lib/tasks/my_task.rake
。
task :do_something => :environment do
end
这是config/schedule.rb
every :sunday, :at => '12pm' do
runner "Employee.make_checkin_out"
end
我怎样才能改变上述逻辑?
答案 0 :(得分:1)
whenever gem提供了生成cron作业的工具。这是rake任务的调度程序。您可以定义类似
every 1.month, :at => '4:30 am' do
runner "MyModel.task_to_run_at_four_thirty_morning_every_month"
end
如果你想要每个月的第一个星期日,请使用cron编辑器,如
0 12 1-7 * * [ "$(date '+\%a')" = "Sun" ]