Как я могу вставить блок try, кроме как в это представление django-импорт-экспорт?

#python #django #django-views #django-import-export

Вопрос:

Я не могу понять, как правильно добавить попытку, кроме блока в этом представлении django-импорт-экспорт. Моя цель-выявить и отобразить конкретные ошибки, которые могут возникнуть во время импорта. Я считаю, что блок «попробовать, кроме» может помочь, но я не знаю, как его реализовать в этом представлении.

 class upload(LoginRequiredMixin,View):
    context = {}


    def post(self, request):
        form = UploadForm(request.POST , request.FILES)
        data_set = Dataset()
        if form.is_valid():
            file = request.FILES['file']
            extension = file.name.split(".")[-1].lower()
            
            if extension == 'csv':
                data = data_set.load(file.read().decode('utf-8'), format=extension)
            else:
                data = data_set.load(file.read(), format=extension)
            resource = ImportResource()
            result = resource.import_data(data_set, dry_run=True, collect_failed_rows=True, raise_errors=True)
            
            if result.has_validation_errors() or result.has_errors():
                messages.success(request,result.invalid_rows)
                self.context['result'] = result
                return redirect('/')                
            else:
                result = resource.import_data(data_set, dry_run=False, raise_errors=False)
                self.context['result'] = None
                messages.success(request,f'Successfully.')                
        else:
            self.context['form'] = UploadForm()

        return render(request, 'home.html', self.context)