summaryrefslogtreecommitdiff
path: root/lib/api/helpers/custom_validators.rb
blob: 0a8f3073a50e1fc191e6eeee21ea9314d2b93f32 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
module API
  module Helpers
    module CustomValidators
      class Absence < Grape::Validations::Base
        def validate_param!(attr_name, params)
          return if params.respond_to?(:key?) && !params.key?(attr_name)
          raise Grape::Exceptions::Validation, params: [@scope.full_name(attr_name)], message: message(:absence)
        end
      end
    end
  end
end

Grape::Validations.register_validator(:absence, ::API::Helpers::CustomValidators::Absence)