manager: clearer error message on invalid csv import file (#37374)
This commit is contained in:
parent
2936f25623
commit
fba5f1217c
|
@ -18,7 +18,7 @@ import hashlib
|
|||
import smtplib
|
||||
import logging
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _, pgettext
|
||||
from django.utils.translation import ugettext_lazy as _, pgettext, ugettext
|
||||
from django import forms
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
from django.contrib.auth import get_user_model
|
||||
|
@ -723,6 +723,11 @@ class UserImportForm(forms.Form):
|
|||
label=_('Organizational Unit'),
|
||||
queryset=OU.objects.all())
|
||||
|
||||
@staticmethod
|
||||
def raise_validation_error(error_message):
|
||||
message_prefix = ugettext('Invalid import file')
|
||||
raise forms.ValidationError('%s : %s' % (message_prefix, six.text_type(error_message)))
|
||||
|
||||
|
||||
class UserNewImportForm(UserImportForm):
|
||||
def clean(self):
|
||||
|
@ -734,7 +739,7 @@ class UserNewImportForm(UserImportForm):
|
|||
import_file.open()
|
||||
importer = CsvImporter()
|
||||
if not importer.run(import_file, encoding):
|
||||
raise forms.ValidationError(importer.error.description or importer.error.code)
|
||||
self.raise_validation_error(importer.error.description or importer.error.code)
|
||||
self.cleaned_data['rows_count'] = len(importer.rows)
|
||||
|
||||
def save(self):
|
||||
|
@ -767,7 +772,7 @@ class UserEditImportForm(UserImportForm):
|
|||
with self.user_import.import_file as fd:
|
||||
importer = CsvImporter()
|
||||
if not importer.run(fd, encoding):
|
||||
raise forms.ValidationError(importer.error.description or importer.error.code)
|
||||
self.raise_validation_error(importer.error.description or importer.error.code)
|
||||
self.cleaned_data['rows_count'] = len(importer.rows)
|
||||
|
||||
def save(self):
|
||||
|
|
Loading…
Reference in New Issue