instance method
presence
Ruby on Rails 3.2.22.5
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 38
def presence
self if present?
end
Defined in activesupport/lib/active_support/core_ext/object/blank.rb line 38
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in Object