aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
diff options
context:
space:
mode:
authorBenjamin Quorning <benjamin@quorning.net>2016-06-24 09:50:41 +0200
committerBenjamin Quorning <benjamin@quorning.net>2016-06-24 11:43:22 +0200
commite292ce8a4f4559aed6faef58e03ced649513cf2f (patch)
tree6234a32a03ad1148a0e565570885dd055aebb95f /activerecord/lib
parent006ea8171dc68fad2b8e7b57b08cab5245fd9476 (diff)
downloadrails-e292ce8a4f4559aed6faef58e03ced649513cf2f.tar.gz
rails-e292ce8a4f4559aed6faef58e03ced649513cf2f.tar.bz2
rails-e292ce8a4f4559aed6faef58e03ced649513cf2f.zip
Add ActiveRecord::Result#first
When you only need the first element of a result set, you shouldn't need to instantiate all of hash_rows.
Diffstat (limited to 'activerecord/lib')
-rw-r--r--activerecord/lib/active_record/result.rb5
1 files changed, 5 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/result.rb b/activerecord/lib/active_record/result.rb
index 8e6cd6c82f..f45f664efe 100644
--- a/activerecord/lib/active_record/result.rb
+++ b/activerecord/lib/active_record/result.rb
@@ -75,6 +75,11 @@ module ActiveRecord
hash_rows[idx]
end
+ def first
+ return nil if @rows.empty?
+ Hash[@columns.zip(@rows.first)]
+ end
+
def last
hash_rows.last
end