Sha256: 6024a68ddbd0a8ac5cc84a18639d0d63e2282712a8b61584d8a18a7b689b0ec3
Contents?: true
Size: 829 Bytes
Versions: 2
Compression:
Stored size: 829 Bytes
Contents
# frozen_string_literal: true module MiniDefender::HandlesValidationErrors extend ActiveSupport::Concern included do rescue_from MiniDefender::ValidationError, with: :handle_validation_error end private def handle_validation_error(error) respond_to do |format| format.html do flash[:error] = error.message flash[:validation_errors] = error.errors flash[:old_values] = safe_values redirect_back fallback_location: root_path end format.json do render json: { message: error.message, errors: error.errors }, status: :unprocessable_entity end end end def safe_values forbidden_keys = %w[password password_confirmation] params.to_unsafe_h .deep_stringify_keys .reject { |k, _| forbidden_keys.include?(k) } end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
mini_defender-0.3.12 | lib/mini_defender/handles_validation_errors.rb |
mini_defender-0.3.11 | lib/mini_defender/handles_validation_errors.rb |