fix params validation
This commit is contained in:
@@ -14,6 +14,8 @@ module Params
|
||||
raise e unless validator.dry_run?
|
||||
rescue StandardError => e
|
||||
Rollbar.error(e) if defined?(Rollbar)
|
||||
|
||||
raise e unless Rails.env.production?
|
||||
end
|
||||
|
||||
attr_reader :params, :dry_run
|
||||
@@ -48,11 +50,11 @@ module Params
|
||||
|
||||
def type(params, key, type, message: nil)
|
||||
return if params.blank?
|
||||
return unless params.key?(key)
|
||||
return if params[key].blank?
|
||||
|
||||
return if params[key].is_a?(type)
|
||||
return if params[key].is_a?(type) || (type == Hash && params[key].is_a?(ActionController::Parameters))
|
||||
|
||||
type = 'Object' if type == 'Hash'
|
||||
type = 'Object' if type == Hash
|
||||
|
||||
raise_error(message || "#{key} must be a #{type}")
|
||||
end
|
||||
@@ -84,6 +86,7 @@ module Params
|
||||
def boolean(params, key, message: nil)
|
||||
return if params.blank?
|
||||
return unless params.key?(key)
|
||||
return if params[key].nil?
|
||||
|
||||
value = ActiveModel::Type::Boolean.new.cast(params[key])
|
||||
|
||||
|
||||
Reference in New Issue
Block a user