Merge pull request #64 from gmbrax/fix/sanitize-accent-bug

Fix/sanitize accent bug
This commit is contained in:
Gustavo Henrique Miranda 2025-07-21 00:23:35 -03:00 committed by GitHub
commit 2454f929c9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 6 additions and 3 deletions

View File

@ -20,7 +20,8 @@ dependencies = [
"sqlalchemy", "sqlalchemy",
"textual", "textual",
"tomli", "tomli",
"tomli_w" "tomli_w",
"unidecode"
] ]
[project.urls] [project.urls]

View File

@ -7,7 +7,7 @@ from pilgrim.utils import DirectoryManager
from sqlalchemy.exc import IntegrityError from sqlalchemy.exc import IntegrityError
from pilgrim.models.travel_diary import TravelDiary from pilgrim.models.travel_diary import TravelDiary
from unidecode import unidecode
class TravelDiaryService: class TravelDiaryService:
def __init__(self, session): def __init__(self, session):
@ -20,8 +20,10 @@ class TravelDiaryService:
- Replaces spaces with underscores - Replaces spaces with underscores
- Ensures name is unique by adding a suffix if needed - Ensures name is unique by adding a suffix if needed
""" """
transliterated_name = unidecode(name)
# Remove special characters and replace spaces # Remove special characters and replace spaces
safe_name = re.sub(r'[^\w\s-]', '', name) safe_name = re.sub(r'[^\w\s-]', '', transliterated_name)
safe_name = safe_name.strip().replace(' ', '_').lower() safe_name = safe_name.strip().replace(' ', '_').lower()
# Ensure we have a valid name # Ensure we have a valid name