Exception: ActionController::ParameterMissing

Inherits:
KeyError
  • Object
show all
Includes:
DidYouMean::Correctable
Defined in:
lib/action_controller/metal/strong_parameters.rb

Overview

Raised when a required parameter is missing.

params = ActionController::Parameters.new(a: {})
params.fetch(:b)
# => ActionController::ParameterMissing: param is missing or the value is empty: b
params.require(:a)
# => ActionController::ParameterMissing: param is missing or the value is empty: a

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(param, keys = nil) ⇒ ParameterMissing

:nodoc:



25
26
27
28
29
# File 'lib/action_controller/metal/strong_parameters.rb', line 25

def initialize(param, keys = nil) # :nodoc:
  @param = param
  @keys  = keys
  super("param is missing or the value is empty: #{param}")
end

Instance Attribute Details

#keysObject (readonly)

:nodoc:



23
24
25
# File 'lib/action_controller/metal/strong_parameters.rb', line 23

def keys
  @keys
end

#paramObject (readonly)

:nodoc:



23
24
25
# File 'lib/action_controller/metal/strong_parameters.rb', line 23

def param
  @param
end

Instance Method Details

#correctionsObject

:nodoc:



34
35
36
# File 'lib/action_controller/metal/strong_parameters.rb', line 34

def corrections # :nodoc:
  @corrections ||= DidYouMean::SpellChecker.new(dictionary: keys).correct(param.to_s)
end