instance method
attribute_for_inspect
Ruby on Rails 4.2.9
Since v4.0.13Signature
attribute_for_inspect(attr_name)
Returns an #inspect-like string for the value of the attribute attr_name. String attributes are truncated up to 50 characters, Date and Time attributes are returned in the :db format. Other attributes return the value of #inspect without modification.
person = Person.create!(name: 'David Heinemeier Hansson ' * 3) person.attribute_for_inspect(:name) # => "\"David Heinemeier Hansson David Heinemeier Hansson ...\"" person.attribute_for_inspect(:created_at) # => "\"2012-10-22 00:15:07\"" person.attribute_for_inspect(:tag_ids) # => "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]"
Parameters
-
attr_namereq
Source
# File activerecord/lib/active_record/attribute_methods.rb, line 303
def attribute_for_inspect(attr_name)
value = read_attribute(attr_name)
if value.is_a?(String) && value.length > 50
"#{value[0, 50]}...".inspect
elsif value.is_a?(Date) || value.is_a?(Time)
%("#{value.to_s(:db)}")
else
value.inspect
end
end
Defined in activerecord/lib/active_record/attribute_methods.rb line 303
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::AttributeMethods