Class: SolidStackWeb::Jobs::SelectionsController
- Inherits:
-
ApplicationController
- Object
- ActionController::Base
- ApplicationController
- SolidStackWeb::Jobs::SelectionsController
- Defined in:
- app/controllers/solid_stack_web/jobs/selections_controller.rb
Constant Summary
Constants inherited from ApplicationController
ApplicationController::PERIOD_DURATIONS
Instance Method Summary collapse
Instance Method Details
#destroy ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'app/controllers/solid_stack_web/jobs/selections_controller.rb', line 4 def destroy status = params[:status].presence_in(Job::STATUSES) || "ready" raise ArgumentError, "Cannot discard #{status} jobs." unless Job::DISCARDABLE.include?(status) ids = Array(params[:job_ids]).map(&:to_i).reject(&:zero?) job_ids = Job::EXECUTION_MODELS[status].where(id: ids).pluck(:job_id) SolidQueue::Job.where(id: job_ids).destroy_all redirect_to jobs_path( status: status, q: params[:q].presence, queue: params[:queue].presence, period: params[:period].presence_in(PERIOD_DURATIONS.keys), priority: params[:priority].presence ) rescue ArgumentError => e redirect_to jobs_path(status: params[:status]), alert: e. end |