Module: Sinatra::ParamChecker

Defined in:
lib/sinatra/param_checker.rb,
lib/sinatra/param_checker/version.rb

Defined Under Namespace

Classes: InvalidParameterError, ParamScope

Constant Summary collapse

Boolean =
Class.new
UUID =
Class.new
VERSION =
"0.1.0".freeze

Instance Method Summary collapse

Instance Method Details

#params(path = nil, options = {}, &block) ⇒ Object



226
227
228
229
230
231
232
233
234
235
236
237
238
# File 'lib/sinatra/param_checker.rb', line 226

def params(path = nil, options = {}, &block)
  ps = ParamScope.new
  ps.instance_eval(&block)
  methods = options.delete(:methods)
  if methods.nil?
    methods = [:post]
  end
  before path, options do
    if methods.include?(self.request.request_method.downcase.to_sym)
      ps.validate!(self.params)
    end
  end
end