No meu plugin, preciso de algo como: Sempre que uma solicitação Ajax for enviada para “/admin/plugins/delete_all_posts”, quero agendar um cron job no servidor que seja executado a cada dois minutos até que a tarefa seja concluída. Abaixo está o código e as linhas comentadas que tentei, mas que estão me dando um erro quando envio uma solicitação Ajax.
Escrevi o código para um job em
=> lib\jobs\scheduled\delete_user_posts_job.rb
também tentei movê-lo para
=> app\jobs\scheduled\delete_user_posts_job.rb
get '/admin/plugins/delete_all_posts' => proc { |_env|
uname = SiteSetting.delete_posts_for_username
userobj = User.find_by(username: uname)
#require_dependency File.expand_path("../app/jobs/scheduled/delete_user_posts_job.rb", __FILE__)
#::Jobs::DeleteUserPostsJob.enqueue
#::Jobs::Scheduled::DeleteUserPostsJob.enqueue
# Requer o arquivo de job para carregar a classe de job
# require_dependency Rails.root.join('plugins', 'delete-topic-ui', 'app', 'jobs', 'scheduled', 'delete_user_posts_job')
# Inicia o cron job para excluir posts do usuário especificado
#::Jobs::Scheduled::DeleteUserPostsJob.enqueue
# Jobs::Scheduled::DeleteAllPosts.enqueue
[200, {}, ['Cron job para excluir posts do usuário foi agendado']]
}