Projet

Général

Profil

Bug #47099

recherche subslug vs tirets

Ajouté par Frédéric Péters il y a plus de 3 ans. Mis à jour il y a plus de 3 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
28 septembre 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

error at /recherche-dechets/4
bad character in group name
'annuaire-pour-les-consommateurs-de-solutions-de-reduction-des-dechets-et-deconomie-circulaire-de-la-metropole-de-lyon_id' at position 5
...
Traceback:

File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py" in inner
  41.             response = get_response(request)

File "/usr/lib/python3/dist-packages/django/core/handlers/base.py" in _get_response
  187.                 response = self.process_exception_by_middleware(e, request)

File "/usr/lib/python3/dist-packages/django/core/handlers/base.py" in _get_response
  185.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/usr/lib/python3/dist-packages/combo/public/views.py" in page
  493.             match = re.match('^' + page.sub_slug + '$', parts[i+1])

File "/usr/lib/python3.7/re.py" in match
  173.     return _compile(pattern, flags).match(string)

File "/usr/lib/python3.7/re.py" in _compile
  286.     p = sre_compile.compile(pattern, flags)

File "/usr/lib/python3.7/sre_compile.py" in compile
  764.         p = sre_parse.parse(p, flags)

File "/usr/lib/python3.7/sre_parse.py" in parse
  930.         p = _parse_sub(source, pattern, flags & SRE_FLAG_VERBOSE, 0)

File "/usr/lib/python3.7/sre_parse.py" in _parse_sub
  426.                            not nested and not items))

File "/usr/lib/python3.7/sre_parse.py" in _parse
  685.                             raise source.error(msg, len(name) + 1)

Fichiers

Révisions associées

Révision dfc23379 (diff)
Ajouté par Lauréline Guérin il y a plus de 3 ans

pages: sub_slug, regexp & '-' in group name (#47099)

Révision 2c853fbe (diff)
Ajouté par Lauréline Guérin il y a plus de 3 ans

manager: check that sub_slug is a valid regex (#47099)

Historique

#2

Mis à jour par Lauréline Guérin il y a plus de 3 ans

  • Assigné à mis à Lauréline Guérin
#3

Mis à jour par Lauréline Guérin il y a plus de 3 ans

Proposition:

Sachant qu'il à mon sens non pertinent de:
- modifier w.c.s. pour changer la génération des slugs des CardModel pour remplacer les - par des _ (avec le legacy et tout)
- forcer le user à modifier manuellement les slugs des CardModel qu'il souhaite utiliser dans les cellules de recherche et les cellules Fiche (#46767) pour virer les -

0001: J'ai choisi de me placer au niveau de l'accès à une page avec sub_slug, de faire une moulinette pour remplacer les - par des _ des named groups mais injecter quand même les variables attendues dans le contexte, qui est un dictionnaire (- ou _ là peu importe, autant injecter ce qu'on s'attend à y trouver)

0002: petite vérification au niveau du formulaire d'édition du sub_slug, on vérifie que ça compile bien

#4

Mis à jour par Frédéric Péters il y a plus de 3 ans

contexte, qui est un dictionnaire (- ou _ là peu importe, autant injecter ce qu'on s'attend à y trouver)

Oui mais on va l'exploiter derrière dans un gabarit django et on ne pourra pas taper https://url/{{fiche-id}}/ comme redirection par exemple. Peut-être mettre dans le contexte à la fois la forme originelle avec des tirets et une forme convertie avec que des underscores ?

#6

Mis à jour par Frédéric Péters il y a plus de 3 ans

  • Statut changé de Solution proposée à Solution validée
#7

Mis à jour par Lauréline Guérin il y a plus de 3 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 2c853fbe80b20121fddf432beec6fecfb7207bad
Author: Lauréline Guérin <zebuline@entrouvert.com>
Date:   Tue Sep 29 15:30:30 2020 +0200

    manager: check that sub_slug is a valid regex (#47099)

commit dfc23379473c79c4b0acdb803a579c515c788cfe
Author: Lauréline Guérin <zebuline@entrouvert.com>
Date:   Tue Sep 29 15:14:28 2020 +0200

    pages: sub_slug, regexp & '-' in group name (#47099)
#8

Mis à jour par Frédéric Péters il y a plus de 3 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF