Open julienbohy opened 1 year ago
Ce qu'il s'est passé, c'est que SpaceFox a renommé son billet après qu'il ait été publié. Il est tout à fait possible de faire ça, seulement là, un bug (qu'on connaît et qui a été corrigé, en attente de déploiement) s'est produit. La correction de ce bug demande de supprimer l'entité qui est identifiée par le lien https://zestedesavoir.com/billets/4492/le-point-sur-la-programmation-objet-poo/
. C'est de là que vient l'erreur 404. Si le bug n'était pas survenu, l'entité derrière l'ancienne URL aurait redirigé vers la nouvelle URL. Sans cette entité, pas de redirection.
Je me demande s'il faut chercher à implémenter quelque chose pour corriger cette situation, qui ne devrait, en temps normal, pas se produire : là je supprime une entité depuis la zone d'admin de Django, normalement on ne fait jamais ça. Surtout que le problème qui nécessite cette manipulation est corrigé...
La correction n'est pas complètement évidente. On stocke directement l'URL dans les notifications. Ça veut dire que lorsqu'on supprime un PublishedContent
, il faut sélectionner toutes les notifications qui pointent vers cette URL et... que faire avec ? On ne veut pas les supprimer, ça reste une notification et on n'a plus d'URL vers laquelle les faire pointer puisque qu'il n'y a plus de version publique du contenu... Admettons qu'on trouve une solution à ça, ça veut que lors de la republication du contenu, il faut mettre à jour l'URL de ces notifications... Ça me semble être du bricolage pour un cas qui ne devrait pas se produire, qui n'est pas grave (pas de corruption de données, pas de réelle gêne pour l'utilisateur) et on peut toujours marquer la notification comme lue pour pas qu'elle dérange.
Sinon, l'autre solution évoquée peut être de ne s'appuyer que sur l'id du contenu et non pas le slug pour rediriger vers l'URL de la version publique actuelle.
Description du bug
La notification d'une réponse dans un billet lorsque celui-ci a été modifié mène à une erreur 404.
Dans mes notifs => Mauvais lien Mauvais lien](https://zestedesavoir.com/billets/4492/le-point-sur-la-programmation-objet-poo/?page=1#p250970)
Ce qu'il devrait être=> Bon lien https://zestedesavoir.com/billets/4492/un-point-sur-la-programmation-objet-poo/?page=1#p251002
Comment reproduire ?
La liste des étapes qui permet de reproduire le bug :
Comportement attendu
le lien de la notification devrait changer également
Capture d'écran
Si possible, une capture d'écran qui explique le problème.
Informations techniques