Added delete method to Document objects
This commit is contained in:
parent
0a64f42d5f
commit
44fc9096a4
@ -21,6 +21,12 @@ class Document(BaseDocument):
|
|||||||
object_id = self.objects._collection.save(self.to_mongo())
|
object_id = self.objects._collection.save(self.to_mongo())
|
||||||
self.id = object_id
|
self.id = object_id
|
||||||
|
|
||||||
|
def delete(self):
|
||||||
|
"""Delete the document from the database. This will only take effect
|
||||||
|
if the document has been previously saved.
|
||||||
|
"""
|
||||||
|
self.objects._collection.remove(self.id)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def drop_collection(cls):
|
def drop_collection(cls):
|
||||||
"""Drops the entire collection associated with this Document type from
|
"""Drops the entire collection associated with this Document type from
|
||||||
|
@ -176,6 +176,15 @@ class DocumentTest(unittest.TestCase):
|
|||||||
self.assertEqual(person_obj['age'], 30)
|
self.assertEqual(person_obj['age'], 30)
|
||||||
self.assertEqual(person_obj['_id'], person.id)
|
self.assertEqual(person_obj['_id'], person.id)
|
||||||
|
|
||||||
|
def test_delete(self):
|
||||||
|
"""Ensure that document may be deleted using the delete method.
|
||||||
|
"""
|
||||||
|
person = self.Person(name="Test User", age=30)
|
||||||
|
person.save()
|
||||||
|
self.assertEqual(self.Person.objects.count(), 1)
|
||||||
|
person.delete()
|
||||||
|
self.assertEqual(self.Person.objects.count(), 0)
|
||||||
|
|
||||||
def test_save_custom_id(self):
|
def test_save_custom_id(self):
|
||||||
"""Ensure that a document may be saved with a custom _id.
|
"""Ensure that a document may be saved with a custom _id.
|
||||||
"""
|
"""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user