Module: ActiveSupport::CoreExtensions::Hash::Except
- Included in:
- Hash
- Defined in:
- lib/gems/activesupport-2.2.2/lib/active_support/core_ext/hash/except.rb
Overview
Return a hash that includes everything but the given keys. This is useful for limiting a set of parameters to everything but a few known toggles:
@person.update_attributes(params[:person].except(:admin))
Instance Method Summary collapse
-
#except(*keys) ⇒ Object
Returns a new hash without the given keys.
-
#except!(*keys) ⇒ Object
Replaces the hash without the given keys.
Instance Method Details
#except(*keys) ⇒ Object
Returns a new hash without the given keys.
12 13 14 |
# File 'lib/gems/activesupport-2.2.2/lib/active_support/core_ext/hash/except.rb', line 12 def except(*keys) dup.except!(*keys) end |
#except!(*keys) ⇒ Object
Replaces the hash without the given keys.
17 18 19 20 21 |
# File 'lib/gems/activesupport-2.2.2/lib/active_support/core_ext/hash/except.rb', line 17 def except!(*keys) keys.map! { |key| convert_key(key) } if respond_to?(:convert_key) keys.each { |key| delete(key) } self end |