def delete(self, request, dataset_id=None, *args, **kwargs): user, profile = user_and_profile(request) dataset = get_object_or_404_extended(Dataset, user, include={'id': dataset_id}) id = request.POST.get('id', request.GET.get('id')) if not id: raise Http404 include = {'id': id, 'dataset': dataset} resource = get_object_or_404_extended(Resource, user, include=include) try: resource.delete(current_user=user) except Exception as e: status = 500 message = e.__str__() messages.error(request, message) else: status = 200 message = 'La ressource a été supprimée avec succès.' messages.success(request, message) send_resource_delete_mail(user, resource) return HttpResponse(status=status)
def delete(self, request, dataset_name, resource_id): """Supprimer la ressource.""" try: resource_id = UUID(resource_id) except ValueError: raise Http404() instance = None for resource in handler_get_request(request, dataset_name): if resource.ckan_id == resource_id: instance = resource break if not instance: raise Http404() instance.delete(current_user=request.user) send_resource_delete_mail(request.user, instance) return HttpResponse(status=204)