예제 #1
0
파일: store.py 프로젝트: jdahlin/thunder
 def get(self, cls, obj_id):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     obj = self._cache.get((cls_info, obj_id))
     if obj is not None:
         return obj
     cursor = self._load(cls_info, collection.find,
                         {'_id': obj_id}, limit=2)
     if cursor.count():
         return self._build_doc(cls_info, cursor[0])
예제 #2
0
파일: store.py 프로젝트: jdahlin/thunder
 def get(self, cls, obj_id):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     obj = self._cache.get((cls_info, obj_id))
     if obj is not None:
         return obj
     cursor = self._load(cls_info,
                         collection.find, {'_id': obj_id},
                         limit=2)
     if cursor.count():
         return self._build_doc(cls_info, cursor[0])
예제 #3
0
 def getCollection(self, cls):
     return get_cls_info(cls).get_collection(self.store)
예제 #4
0
파일: store.py 프로젝트: jdahlin/thunder
 def find(self, cls, *args, **kwargs):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     cursor = self._load(cls_info, collection.find, *args, **kwargs)
     for item in cursor:
         yield self._build_doc(cls_info, item)
예제 #5
0
파일: store.py 프로젝트: jdahlin/thunder
 def drop_collection(self, cls):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     collection.drop()
예제 #6
0
파일: store.py 프로젝트: jdahlin/thunder
 def count(self, cls):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     return collection.find().count()
예제 #7
0
파일: store.py 프로젝트: jdahlin/thunder
 def find_one_by(self, cls, **kwargs):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     item = self._load(cls_info, collection.find_one, **kwargs)
     if item is not None:
         return self._build_doc(cls_info, item)
예제 #8
0
파일: store.py 프로젝트: jdahlin/thunder
 def find(self, cls, *args, **kwargs):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     cursor = self._load(cls_info, collection.find, *args, **kwargs)
     for item in cursor:
         yield self._build_doc(cls_info, item)
예제 #9
0
파일: store.py 프로젝트: jdahlin/thunder
 def drop_collection(self, cls):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     collection.drop()
예제 #10
0
파일: store.py 프로젝트: jdahlin/thunder
 def count(self, cls):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     return collection.find().count()
예제 #11
0
파일: store.py 프로젝트: jdahlin/thunder
 def find_one_by(self, cls, **kwargs):
     cls_info = get_cls_info(cls)
     collection = cls_info.get_collection(self)
     item = self._load(cls_info, collection.find_one, **kwargs)
     if item is not None:
         return self._build_doc(cls_info, item)