本文整理汇总了Python中ming.odm.ODMSession.expunge方法的典型用法代码示例。如果您正苦于以下问题:Python ODMSession.expunge方法的具体用法?Python ODMSession.expunge怎么用?Python ODMSession.expunge使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ming.odm.ODMSession
的用法示例。
在下文中一共展示了ODMSession.expunge方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: TestBasicMapping
# 需要导入模块: from ming.odm import ODMSession [as 别名]
# 或者: from ming.odm.ODMSession import expunge [as 别名]
#.........这里部分代码省略.........
# Load back with instrumentation
self.session.clear()
obj = Basic1.query.find().options(instrument=True).first()
self.assertEqual(type(obj.b), InstrumentedList)
self.assertEqual(type(obj.c), InstrumentedObj)
# Load back without instrumentation
self.session.clear()
obj = Basic1.query.find().options(instrument=False).first()
self.assertEqual(type(obj.b), list)
self.assertEqual(type(obj.c), Object)
def test_repr(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4,e=5))
sdoc = repr(doc)
assert 'a=1' in sdoc, sdoc
assert 'b=I[2, 3]' in sdoc, sdoc
assert "c=I{'e': 5, 'd': 4}" in sdoc, sdoc
def test_create(self):
doc = self.Basic()
assert state(doc).status == 'new'
self.session.flush()
assert state(doc).status == 'clean'
doc.a = 5
assert state(doc).status == 'dirty'
self.session.flush()
assert state(doc).status == 'clean'
c = doc.c
c.e = 5
assert state(doc).status == 'dirty', state(doc).status
assert repr(state(doc)).startswith('<ObjectState')
def test_mapped_object(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.assertEqual(doc.a, doc['a'])
self.assertRaises(AttributeError, getattr, doc, 'foo')
self.assertRaises(KeyError, doc.__getitem__, 'foo')
doc['a'] = 5
self.assertEqual(doc.a, doc['a'])
self.assertEqual(doc.a, 5)
self.assert_('a' in doc)
doc.delete()
def test_mapper(self):
m = mapper(self.Basic)
assert repr(m) == '<Mapper Basic:basic>'
self.datastore.db.basic.insert(dict(
a=1, b=[2,3], c=dict(d=4, e=5), f='unknown'))
print list(self.datastore.db.basic.find())
obj = self.Basic.query.find().options(instrument=False).first()
print obj
q = self.Basic.query.find()
self.assertEqual(q.count(), 1)
self.session.remove(self.Basic, {})
q = self.Basic.query.find()
self.assertEqual(q.count(), 0)
def test_query(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
q = self.Basic.query.find(dict(a=1))
self.assertEqual(q.count(), 1)
doc.a = 5
self.session.flush()
q = self.Basic.query.find(dict(a=1))
self.assertEqual(q.count(), 0)
self.assertEqual(doc.query.find(dict(a=1)).count(), 0)
self.assertEqual(doc.query.find(dict(b=doc.b)).count(), 1)
doc = self.Basic.query.get(a=5)
self.assert_(doc is not None)
self.Basic.query.remove({})
self.assertEqual(self.Basic.query.find().count(), 0)
def test_delete(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
q = self.Basic.query.find()
self.assertEqual(q.count(), 1)
doc.delete()
q = self.Basic.query.find()
self.assertEqual(q.count(), 1)
self.session.flush()
q = self.Basic.query.find()
self.assertEqual(q.count(), 0)
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
q = self.Basic.query.find()
self.assertEqual(q.count(), 1)
def test_imap(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
doc1 = self.Basic.query.get(_id=doc._id)
self.assert_(doc is doc1)
self.session.expunge(doc)
doc1 = self.Basic.query.get(_id=doc._id)
self.assert_(doc is not doc1)
self.session.expunge(doc)
self.session.expunge(doc)
self.session.expunge(doc)
示例2: TestBasicMapping
# 需要导入模块: from ming.odm import ODMSession [as 别名]
# 或者: from ming.odm.ODMSession import expunge [as 别名]
#.........这里部分代码省略.........
self.session.remove(self.Basic)
def tearDown(self):
self.session.clear()
self.datastore.conn.drop_all()
def test_repr(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
repr(self.session)
def test_create(self):
doc = self.Basic()
assert state(doc).status == 'new'
self.session.flush()
assert state(doc).status == 'clean'
doc.a = 5
assert state(doc).status == 'dirty'
self.session.flush()
assert state(doc).status == 'clean'
c = doc.c
c.e = 5
assert state(doc).status == 'dirty'
assert repr(state(doc)).startswith('<ObjectState')
def test_mapped_object(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.assertEqual(doc.a, doc['a'])
self.assertEqual(doc.d, None)
self.assertRaises(AttributeError, getattr, doc, 'e')
self.assertRaises(AttributeError, getattr, doc, 'foo')
self.assertRaises(KeyError, doc.__getitem__, 'foo')
doc['d'] = 'test'
self.assertEqual(doc.d, doc['d'])
doc['e'] = 'test'
self.assertEqual(doc.e, doc['e'])
del doc.d
self.assertEqual(doc.d, None)
del doc.e
self.assertRaises(AttributeError, getattr, doc, 'e')
doc['a'] = 5
self.assertEqual(doc.a, doc['a'])
self.assertEqual(doc.a, 5)
self.assert_('a' in doc)
doc.delete()
def test_mapper(self):
m = mapper(self.Basic)
self.assertEqual(repr(m), '<Mapper Basic:basic>')
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
q = self.Basic.query.find()
self.assertEqual(q.count(), 1)
self.session.remove(self.Basic, {})
q = self.Basic.query.find()
self.assertEqual(q.count(), 0)
def test_query(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
q = self.Basic.query.find(dict(a=1))
self.assertEqual(q.count(), 1)
doc.a = 5
self.session.flush()
q = self.Basic.query.find(dict(a=1))
self.assertEqual(q.count(), 0)
self.assertEqual(doc.query.find(dict(a=1)).count(), 0)
doc = self.Basic.query.get(a=5)
self.assert_(doc is not None)
self.Basic.query.remove({})
self.assertEqual(self.Basic.query.find().count(), 0)
def test_delete(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
q = self.Basic.query.find()
self.assertEqual(q.count(), 1)
doc.delete()
q = self.Basic.query.find()
self.assertEqual(q.count(), 1)
self.session.flush()
q = self.Basic.query.find()
self.assertEqual(q.count(), 0)
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
q = self.Basic.query.find()
self.assertEqual(q.count(), 1)
def test_imap(self):
doc = self.Basic(a=1, b=[2,3], c=dict(d=4, e=5))
self.session.flush()
doc1 = self.Basic.query.get(_id=doc._id)
self.assert_(doc is doc1)
self.session.expunge(doc)
doc1 = self.Basic.query.get(_id=doc._id)
self.assert_(doc is not doc1)
self.session.expunge(doc)
self.session.expunge(doc)
self.session.expunge(doc)