aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@envy8.local>2008-04-28 13:27:52 -0500
committerDavid Heinemeier Hansson <david@envy8.local>2008-04-28 13:27:52 -0500
commit0a6980f2dc6ef8b211323e0655f41702a4ce3eae (patch)
tree8160d06eb90fc794449d8e78a5b280b4136dc4bd
parent850aba5473ce14edcd067f16badfa198e2070095 (diff)
downloadrails-0a6980f2dc6ef8b211323e0655f41702a4ce3eae.tar.gz
rails-0a6980f2dc6ef8b211323e0655f41702a4ce3eae.tar.bz2
rails-0a6980f2dc6ef8b211323e0655f41702a4ce3eae.zip
Let Base.all use conditions etc like first/last
-rwxr-xr-xactiverecord/lib/active_record/base.rb6
-rw-r--r--activerecord/lib/active_record/named_scope.rb1
-rwxr-xr-xactiverecord/test/cases/base_test.rb4
3 files changed, 10 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb
index dfc0eac54d..300688453a 100755
--- a/activerecord/lib/active_record/base.rb
+++ b/activerecord/lib/active_record/base.rb
@@ -532,6 +532,12 @@ module ActiveRecord #:nodoc:
find(:last, *args)
end
+ # This is an alias for find(:all). You can pass in all the same arguments to this method as you can
+ # to find(:all)
+ def all(*args)
+ find(:all, *args)
+ end
+
#
# Executes a custom sql query against your database and returns all the results. The results will
# be returned as an array with columns requested encapsulated as attributes of the model you call
diff --git a/activerecord/lib/active_record/named_scope.rb b/activerecord/lib/active_record/named_scope.rb
index 120ec88f95..81b99f8e96 100644
--- a/activerecord/lib/active_record/named_scope.rb
+++ b/activerecord/lib/active_record/named_scope.rb
@@ -11,7 +11,6 @@ module ActiveRecord
def self.included(base)
base.class_eval do
extend ClassMethods
- named_scope :all
named_scope :scoped, lambda { |scope| scope }
end
end
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb
index 45d47837a4..93719c710a 100755
--- a/activerecord/test/cases/base_test.rb
+++ b/activerecord/test/cases/base_test.rb
@@ -1630,6 +1630,10 @@ class BasicsTest < ActiveRecord::TestCase
def test_last
assert_equal Developer.find(:first, :order => 'id desc'), Developer.last
end
+
+ def test_all_with_conditions
+ assert_equal Developer.find(:all, :order => 'id desc'), Developer.all(:order => 'id desc')
+ end
def test_find_ordered_last
last = Developer.find :last, :order => 'developers.salary ASC'