instance method
presence
Ruby on Rails 3.0.20
Since v2.3.18Signature
presence()
Returns object if it’s #present? otherwise returns nil. object.presence is equivalent to object.present? ? object : nil.
This is handy for any representation of objects where blank is the same as not present at all. For example, this simplifies a common check for HTTP POST/query parameters:
state = params[:state] if params[:state].present? country = params[:country] if params[:country].present? region = state || country || 'US'
…becomes:
region = params[:state].presence || params[:country].presence || 'US'
Source
# File activesupport/lib/active_support/core_ext/object/blank.rb, line 35
def presence
self if present?
end
Defined in activesupport/lib/active_support/core_ext/object/blank.rb line 35
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in Object