def remove_from_index(self, request, queryset): from django_elasticsearch_dsl.registries import registry for obj in queryset: registry.delete(obj, raise_on_error=False) self.message_user(request, _("Removed from search index"))
def sync_task(obj_id, delete: bool = False) -> None: if delete: obj = model(id=obj_id) registry.delete(obj, raise_on_error=False) else: obj = document().get_queryset().prefetch_related(None).get( id=obj_id) registry.update(obj)
def search_instance_delete(model_name, pk): if pk is None: return model = apps.get_model(model_name) instance = model() instance.pk = pk instance.id = pk registry.delete(instance, raise_on_error=False)
def delete_document_task(app_label, object_name, instance_id): instance = _instance(app_label, object_name, instance_id) registry.delete(instance, raise_on_error=False) return { 'app': app_label, 'model': object_name, 'instance_id': instance_id }
def handle_delete(self, sender, instance, **kwargs): """Handle delete. Given an individual model instance, delete the object from index. """ # Due to the inheritance used with Filterable Lists # this allows us to actually delete the instance. if issubclass(instance.specific_class().__class__, AbstractFilterPage): instance_to_delete = AbstractFilterPage.objects.get(pk=instance.id) registry.delete(instance_to_delete, raise_on_error=False) else: registry.delete(instance, raise_on_error=False)
def delete_document(sender, **kwargs): """Deletes document on deleted records. Deletes index if Exercise is deleted from database """ app_label = sender._meta.app_label model_name = sender._meta.model_name instance = kwargs['instance'] if app_label == 'feed': if model_name == 'exercise': instances = instance.exercises.all() for _instance in instances: # registry.update(_instance) registry.delete(_instance, raise_on_error=False) if model_name == 'muscleGroup': instances = instance.exercises.all() for _instance in instances: # registry.update(_instance) registry.delete(_instance, raise_on_error=False)
def delete_document(sender, **kwargs): model_name = sender._meta.model_name instance = kwargs["instance"] if model_name == "propertyrules": registry.delete(instance, raise_on_error=False) if model_name == "propertyamenities": registry.delete(instance, raise_on_error=False) if model_name == "propertyimage": registry.delete(instance, raise_on_error=False) if model_name == "propertyaddress": registry.delete(instance, raise_on_error=False)
def delete_document(sender, **kwargs): """ Update document on deleted records. """ app_label = sender._meta.app_label model_name = sender._meta.model_name instance = kwargs['instance'] if app_label == 'news': # If it is `news.stock` that is being updated. if model_name == 'stock': instances = instance.news.all() for _instance in instances: registry.update(_instance) registry.delete(_instance, raise_on_error=False) # If it is `books.Author` that is being updated. if model_name == 'author': instances = instance.news.all() for _instance in instances: registry.update(_instance) registry.delete(_instance, raise_on_error=False)
def delete_document(sender, **kwargs): """Update address document on deleted records.""" app_label = sender._meta.app_label model_name = sender._meta.model_name instance = kwargs['instance'] if app_label == 'search': if model_name == 'city': instances = instance.address.all() for _instance in instances: # registry.update(_instance) registry.delete(_instance, raise_on_error=False) if model_name == 'country': instances = instance.address.all() for _instance in instances: # registry.update(_instance) registry.delete(_instance, raise_on_error=False) if model_name == 'continent': instances = instance.address.all() for _instance in instances: # registry.update(_instance) registry.delete(_instance, raise_on_error=False)
def delete_with_related(app_label, object_name, instance_id): instance = _instance(app_label, object_name, instance_id) registry.delete_related(instance) registry.delete(instance, raise_on_error=False) return {'app': app_label, 'model': object_name, 'instance_id': instance_id}
def remove_html_file(instance_list, **_): # Do not index if autosync is disabled globally if DEDConfig.autosync_enabled(): registry.delete(instance_list)
def search_instance_delete(model_name, pk): model = apps.get_model(model_name) instance = model() instance.pk = pk instance.id = pk registry.delete(instance, raise_on_error=False)
def delete_from_ingrs_index(instance): registry.delete(instance)
def handle_delete(pk, app_label, model_name): sender = apps.get_model(app_label, model_name) instance = sender.objects.get(pk=pk) registry.delete(instance, raise_on_error=False)
def remove_project(instance, *args, **kwargs): # Do not index if autosync is disabled globally if DEDConfig.autosync_enabled(): registry.delete(instance)