Sha256: 3336072af8bb6b7de228df9139634ad3f00139d6e660ee54cfa10883acee3146
Contents?: true
Size: 1.07 KB
Versions: 1
Compression:
Stored size: 1.07 KB
Contents
module Grape module Validations class AllowBlankValidator < Base def validate_param!(attr_name, params) return if (options_key?(:value) ? @option[:value] : @option) || !params.is_a?(Hash) value = params[attr_name] value = value.strip if value.respond_to?(:strip) key_exists = params.key?(attr_name) should_validate = if @scope.root? # root scope. validate if it's a required param. if it's optional, validate only if key exists in hash @required || key_exists else # nested scope (@required && params.present?) || # optional param but key inside scoping element exists (!@required && params.key?(attr_name)) end return unless should_validate return if false == value || value.present? raise Grape::Exceptions::Validation, params: [@scope.full_name(attr_name)], message: message(:blank) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
grape-0.17.0 | lib/grape/validations/validators/allow_blank.rb |