aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib
diff options
context:
space:
mode:
Diffstat (limited to 'actionpack/lib')
-rw-r--r--actionpack/lib/action_controller/metal/strong_parameters.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/actionpack/lib/action_controller/metal/strong_parameters.rb b/actionpack/lib/action_controller/metal/strong_parameters.rb
index fc8e345d43..02599a4654 100644
--- a/actionpack/lib/action_controller/metal/strong_parameters.rb
+++ b/actionpack/lib/action_controller/metal/strong_parameters.rb
@@ -252,7 +252,15 @@ module ActionController
#
# ActionController::Parameters.new(person: {}).require(:person)
# # => ActionController::ParameterMissing: param is missing or the value is empty: person
+ #
+ # ActionController::Parameters.new(first_name: 'Gaurish', title: nil).require([:first_name, :title])
+ # # => ActionController::ParameterMissing: param is missing or the value is empty: title
+ #
+ # params = ActionController::Parameters.new(first_name: 'Gaurish', title: Mjallo)
+ # first_name, title = params.require([:first_name, :title])
+ #
def require(key)
+ return keys.map { |k| require(k) } if key.is_a?(Array)
value = self[key]
if value.present? || value == false
value