module AllowedParams::Helper::ClassMethods
Public Instance Methods
method_added(method)
click to toggle source
Calls superclass method
# File lib/allowed_params/helper.rb, line 18 def method_added(method) if instance_variable_get(:@request_params_validator).present? request_params_validator = @request_params_validator @request_params_validator = nil whitelist = @whitelist @whitelist = nil before_filter only: [method] do request_params = request_params_validator.new(params) if request_params.invalid? raise ValidationError, request_params.errors.full_messages.first end if whitelist && request_params.not_white_listed.present? raise NotAllowedError, request_params.not_white_listed.join(', ') end end end super end
params(opts={}, &block)
click to toggle source
# File lib/allowed_params/helper.rb, line 11 def params(opts={}, &block) builder = ::AllowedParams::ValidatorBuilder.new(self) builder.instance_eval(&block) if block_given? @request_params_validator = builder.validator @whitelist = opts.fetch(:whitelist, false) end