From bee360dfbb544753ef566555f8d74997b01b64de Mon Sep 17 00:00:00 2001 From: Daniel Date: Tue, 5 May 2026 08:52:02 +0200 Subject: [PATCH] Fix POSTGRES_ENABLED check in ShippingAddress.clean() (issue #66) --- tienda/models.py | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/tienda/models.py b/tienda/models.py index 6bba280..4f0612b 100644 --- a/tienda/models.py +++ b/tienda/models.py @@ -346,35 +346,21 @@ class ShippingAddress(models.Model): def clean(self): from django.core.exceptions import ValidationError from django.conf import settings + from .vars import ALMERIA_POSTAL_CODE_PREFIX, ALMERIA_MUNICIPALITIES_DISPLAY + from .views import _normalize_location_text postal_code = (self.postal_code or "").strip() city = (self.city or "").strip() - if settings.POSTGRES_ENABLED: - almeria_prefix = "04" - else: - from .vars import ALMERIA_POSTAL_CODE_PREFIX - almeria_prefix = ALMERIA_POSTAL_CODE_PREFIX + almeria_prefix = getattr(settings, 'POSTGRES_ENABLED', False) and "04" or ALMERIA_POSTAL_CODE_PREFIX if len(postal_code) != 5 or not postal_code.isdigit() or not postal_code.startswith(almeria_prefix): raise ValidationError({ 'postal_code': 'Solo realizamos envíos en la provincia de Almería (código postal 04xxx).' }) - if settings.POSTGRES_ENABLED: - from .vars import ALMERIA_MUNICIPALITIES_DISPLAY - normalized_municipalities = { - unicodedata.normalize("NFD", m).encode('ASCII', 'ignore').decode('ASCII') - .lower().replace("-", " ").replace(" ", " ").strip() - for m in ALMERIA_MUNICIPALITIES_DISPLAY - } - normalized_city = unicodedata.normalize("NFD", city).encode('ASCII', 'ignore').decode('ASCII').lower() - else: - from .views import _normalize_location_text - normalized_city = _normalize_location_text(city) - - from .vars import ALMERIA_MUNICIPALITIES_DISPLAY - normalized_municipalities = {_normalize_location_text(m) for m in ALMERIA_MUNICIPALITIES_DISPLAY} + normalized_city = _normalize_location_text(city) + normalized_municipalities = {_normalize_location_text(m) for m in ALMERIA_MUNICIPALITIES_DISPLAY} if normalized_city not in normalized_municipalities: raise ValidationError({