mirror of
				https://gitlab.crans.org/mediatek/med.git
				synced 2025-10-31 10:59:52 +01:00 
			
		
		
		
	Fix ISBN scraper
This commit is contained in:
		| @@ -9,6 +9,7 @@ import unicodedata | |||||||
| from urllib.error import HTTPError | from urllib.error import HTTPError | ||||||
| import urllib.request | import urllib.request | ||||||
|  |  | ||||||
|  | from django.core.exceptions import ValidationError | ||||||
| from django.db.models import QuerySet | from django.db.models import QuerySet | ||||||
| from django.forms import ModelForm | from django.forms import ModelForm | ||||||
| from django.utils.translation import gettext_lazy as _ | from django.utils.translation import gettext_lazy as _ | ||||||
| @@ -320,6 +321,13 @@ class MediaAdminForm(ModelForm): | |||||||
|         return self.cleaned_data |         return self.cleaned_data | ||||||
|  |  | ||||||
|     def _clean_fields(self): |     def _clean_fields(self): | ||||||
|  |         # First clean ISBN field | ||||||
|  |         isbn_field = self.fields['isbn'] | ||||||
|  |         isbn = isbn_field.widget.value_from_datadict( | ||||||
|  |             self.data, self.files, self.add_prefix('isbn')) | ||||||
|  |         isbn = isbn_field.clean(isbn) | ||||||
|  |         self.cleaned_data['isbn'] = isbn | ||||||
|  |  | ||||||
|         for name, field in self.fields.items(): |         for name, field in self.fields.items(): | ||||||
|             # value_from_datadict() gets the data from the data dictionaries. |             # value_from_datadict() gets the data from the data dictionaries. | ||||||
|             # Each widget type knows how to retrieve its own data, because some |             # Each widget type knows how to retrieve its own data, because some | ||||||
| @@ -329,7 +337,6 @@ class MediaAdminForm(ModelForm): | |||||||
|             else: |             else: | ||||||
|                 value = field.widget.value_from_datadict( |                 value = field.widget.value_from_datadict( | ||||||
|                     self.data, self.files, self.add_prefix(name)) |                     self.data, self.files, self.add_prefix(name)) | ||||||
|             from django.core.exceptions import ValidationError |  | ||||||
|             try: |             try: | ||||||
|                 # We don't want to check a field when we enter an ISBN. |                 # We don't want to check a field when we enter an ISBN. | ||||||
|                 if "isbn" not in self.data \ |                 if "isbn" not in self.data \ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user