def do_query(self, app_name, query, fields, **kwargs): collection_name = query.pop('collection_name', '') from_datetime = query.pop('from_datetime', '') to_datetime = query.pop('to_datetime', '') cls_info = RegisteredEvents.get_by_name(app_name, collection_name) alias = cls_info['alias'] key_fields = QueryInterpreter.parse(fields, alias) info = EventHandler.mget(from_datetime=from_datetime, to_datetime=to_datetime, fields=key_fields) return info
def do_event(self, uid, cls_info, event): ''' 对于每个事件的处理,实际调用了collection的record行为。 ''' handler = EventHandler(uid=uid, cls_dict=cls_info, **event) handler.record()