instance method attribute_present?

Ruby on Rails edge

Since v4.0.13

Available in: v4.0.13 v4.1.16 v4.2.11.3 v5.0.7.2 v5.1.7 v5.2.8.1 v6.0.6.1 v6.1.7.10 v7.0.10 v7.1.6 v7.2.4 v8.0.5.1 v8.1.4 edge

Signature

attribute_present?(attr_name)

Returns true if the specified attribute has been set by the user or by a database load and is neither nil nor empty? (the latter only applies to objects that respond to empty?, most notably Strings). Otherwise, false. Note that it always returns true with boolean attributes.

“‘ class Task < ActiveRecord::Base end

task = Task.new(title: ”, is_done: false) task.attribute_present?(:title) # => false task.attribute_present?(:is_done) # => true task.title = ‘Buy milk’ task.is_done = true task.attribute_present?(:title) # => true task.attribute_present?(:is_done) # => true “‘

Parameters

attr_name req
Source
# File activerecord/lib/active_record/attribute_methods.rb, line 444
    def attribute_present?(attr_name)
      value = read_attribute(attr_name)
      !value.nil? && !(value.respond_to?(:empty?) && value.empty?)
    end

Defined in activerecord/lib/active_record/attribute_methods.rb line 444 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveRecord::AttributeMethods

Type at least 2 characters to search.

Use the arrow keys to navigate results, Enter to open one, Escape to close.

Keyboard shortcuts

/
Focus search
⌘K / Ctrl-K
Command palette
?
This help
Esc
Close