instance method
hash_rows
Ruby on Rails 6.0.6
Since v3.1.12 PrivateSignature
hash_rows()
No documentation comment.
Source
# File activerecord/lib/active_record/result.rb, line 141
def hash_rows
@hash_rows ||=
begin
# We freeze the strings to prevent them getting duped when
# used as keys in ActiveRecord::Base's @attributes hash
columns = @columns.map(&:-@)
length = columns.length
@rows.map { |row|
# In the past we used Hash[columns.zip(row)]
# though elegant, the verbose way is much more efficient
# both time and memory wise cause it avoids a big array allocation
# this method is called a lot and needs to be micro optimised
hash = {}
index = 0
while index < length
hash[columns[index]] = row[index]
index += 1
end
hash
}
end
end
Defined in activerecord/lib/active_record/result.rb line 141
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::Result