Module: AdminBulkActions
- Extended by:
- ActiveSupport::Concern
- Included in:
- Admin::MediaAssetsController, Admin::PermissionsController, Admin::RedirectsController, Admin::UserPermissionsController, Admin::UsersController, Admin::VisitorErrorsController
- Defined in:
- lib/generators/ruby_cms/templates/controllers/concerns/admin_bulk_actions.rb
Overview
Shared helpers for bulk admin actions.
Replaces 7-line repeated blocks like:
ids = Array(params[:item_ids]).filter_map(&:to_i)
count = Model.where(id: ids).destroy_all.size
audit!(:thing_deleted, target: "Thing (bulk)", summary: "Deleted #{count}")
redirect_to ...
Usage:
include AdminBulkActions
def bulk_delete
count = bulk_destroy(Redirect, audit: :redirect_deleted, target_label: "Redirect")
redirect_to admin_redirects_path, notice: "#{count} verwijderd"
end