def enqueue(self, action, sender, instance, **kwargs): """ Given an individual model instance, determine if a backend handles the model, check if the index is Celery-enabled and enqueue task. """ try: Bungiesearch.get_index(sender, via_class=True) except KeyError: return # This model is not managed by Bungiesearch. if action not in self.ALLOWED_ACTIONS: raise ValueError("Unrecognized action %s" % action) get_update_task().delay(action, instance)
def search_index(self, index): from bungiesearch import Bungiesearch if index not in Bungiesearch.get_index(self.model, via_class=True): logger.warning( 'Model/doctype {} is not present on index {}: search may return no results.' .format(self.model.__name__, index)) return Bungiesearch().index(index).doc_type(self.model.__name__)
def search(self): from bungiesearch import Bungiesearch return Bungiesearch().index( *Bungiesearch.get_index(self.model, via_class=True)).doc_type( self.model.__name__)
def search_index(self, index): from bungiesearch import Bungiesearch if index not in Bungiesearch.get_index(self.model, via_class=True): logger.warning('Model/doctype {} is not present on index {}: search may return no results.'.format(self.model.__name__, index)) return Bungiesearch().index(index).doc_type(self.model.__name__)
def search(self): from bungiesearch import Bungiesearch return Bungiesearch().index(*Bungiesearch.get_index(self.model, via_class=True)).doc_type(self.model.__name__)