Trouvez le message que le compte A vient de supprimer de manière logicielle, ouvrez-le.
Si vous essayez de supprimer définitivement le message, un message d’erreur s’affichera : “le message ne peut pas être supprimé car il y a d’autres messages”.
Vous devez supprimer le message d’épinglage et de fermeture du sujet sous le message, puis réessayer la suppression définitive.
Vous réussirez, mais vous ne pourrez plus ouvrir la liste de suppression du compte A.
Pouvez-vous toujours accéder aux messages supprimés du sujet/message privé et les supprimer définitivement à partir de là, ou ne pouvez-vous plus du tout voir vos messages supprimés ?
L’administrateur A crée un nouveau sujet, l’épingle globalement (pour toujours), puis le ferme
L’administrateur A supprime ensuite le sujet de manière logicielle
L’administrateur B trouve ce sujet en accédant à la liste /deleted-posts de l’administrateur A depuis son profil
L’administrateur B tente de supprimer définitivement le sujet - reçoit une erreur « Vous ne pouvez pas supprimer définitivement ce sujet car il y a d’autres messages. »
L’administrateur B supprime les petits messages d’action « épingler » et « fermer »
L’administrateur B retente la suppression définitive - la suppression réussit
Cependant, l’administrateur B ne peut plus accéder à /deleted-posts de l’administrateur A, avec une erreur GET https://greedy.jammydodger.monster/posts/jammydodger/deleted?offset=0
Bien que l’administrateur A et l’administrateur C puissent toujours accéder à la liste /deleted-posts de l’administrateur A. À court terme, @VincentAlse, pourriez-vous utiliser le compte d’administrateur secondaire pour accéder à la liste /deleted-posts afin de trouver les autres messages que vous souhaitez supprimer ? Alternativement, vous pourriez utiliser une requête data-explorer pour les identifier ?
Merci pour la confirmation. Je viens d’essayer Admin C (avec l’ancien compte et un compte nouvellement créé). Cela ne fonctionne pas pour moi. Je pense que la raison est que j’ai supprimé des publications pour de nombreux comptes différents et que la liste de suppression pour la plupart d’entre eux a été buggée.
Je vais jeter un œil à data-explorer. Puis-je y interroger les publications supprimées ?
Ah, c’est malheureux. Si vous avez accès au plugin d’exploration de données, je pense que quelque chose comme ceci devrait reproduire la liste /deleted/posts pour un utilisateur particulier (avec post_id inclus pour faire bonne mesure) :
-- [params]
-- user_id :user_id
SELECT p.created_at AS reltime$time,
id AS post_id,
id
FROM posts p
WHERE p.user_id = :user_id
AND p.deleted_at IS NOT NULL
ORDER BY p.created_at DESC
Est-ce que cela a fonctionné pour vous @VincentAlse ? Je pense qu’il devrait y avoir plusieurs façons de trouver les messages que vous souhaitez supprimer si celui-ci ne vous a pas donné la liste dont vous aviez besoin ?
En regardant cette capture d’écran, il semble que vous ayez modifié le paramètre en haut, ce qui l’empêchera de fonctionner. Si vous le laissez tel quel, :user_id, cela vous donnera une boîte de sélection lorsque vous l’exécuterez, où vous pourrez taper un nom d’utilisateur.
Alternativement, vous pourriez abandonner le paramètre et ajouter l’ID utilisateur que vous avez obtenu du JSON à la ligne WHERE p.user_id =.
J’ai corrigé le bug que vous aviez signalé avec cette PR hier, qui a déjà été fusionnée et peut être déployée si vous mettez à jour votre instance Discourse :
Cependant, nous avons découvert que la suppression définitive des sujets pouvait laisser des publications d’actions mineures orphelines dans la base de données. Ce second bug a été corrigé avec :
Je pense que tout devrait fonctionner correctement maintenant. N’hésitez pas à nous faire savoir si vous rencontrez d’autres problèmes.