diff --git a/lib/mongo_mapper/document.rb b/lib/mongo_mapper/document.rb
index <HASH>..<HASH> 100644
--- a/lib/mongo_mapper/document.rb
+++ b/lib/mongo_mapper/document.rb
@@ -90,6 +90,10 @@ module MongoMapper
         collection.find(FinderOptions.to_mongo_criteria(conditions)).count
       end
 
+      def exist?(conditions={})
+        !count(conditions).zero?
+      end
+
       def create(*docs)
         instances = []
         docs = [{}] if docs.blank?
diff --git a/test/functional/test_document.rb b/test/functional/test_document.rb
index <HASH>..<HASH> 100644
--- a/test/functional/test_document.rb
+++ b/test/functional/test_document.rb
@@ -961,4 +961,27 @@ class DocumentTest < Test::Unit::TestCase
       from_db.updated_at.to_i.should_not == old_updated_at.to_i
     end
   end
+
+  context "#exist?" do
+    setup do
+      @doc = @document.create(:first_name => "James", :age => 27)
+    end
+
+    should "be true when at least one document exists" do
+      @document.exist?.should == true
+    end
+
+    should "be false when no documents exist" do
+      @doc.destroy
+      @document.exist?.should == false
+    end
+
+    should "be true when at least one document exists that matches the conditions" do
+      @document.exist?(:first_name => "James").should == true
+    end
+
+    should "be false when no documents exist with the provided conditions" do
+      @document.exist?(:first_name => "Jean").should == false
+    end
+  end
 end
Add the ability to check for the existence of a record. A sometimes
handy method that only returns a boolean.