Nombre précis de sujets dans la liste des balises

In the tags page, the topic number is not accurate. Indeed, it includes topics that are not visible to the user.

Example here on meta:

I’ve been hit by this issue when using the API. In my plugin, I need an exact topic count, so I’m forced to load each tag in order to count the visible topics. It seems to work right now, but it’s a waste of bandwidth and I’m afraid one day I will hit a Discourse rate limit for API calls.

Any chance this might be solved?

Thanks.

2 « J'aime »

Those are all in PMs you don’t have access to.

It’s not a fix or anything (obviously) but at 4 instances only in PMs I don’t think we need this particular tag … so I’m removing it.

1 « J'aime »

If need be, another example on meta is the sass tag (topic count in tag list=2, topic count in tag page=1).

1 « J'aime »

J’ai remarqué cela dans notre forum également. Le moyen le plus simple de le reproduire est de créer un nouveau sujet avec un tag, puis de le supprimer : il est toujours compté.

2 « J'aime »

Une autre légère gêne causée par ce problème est que les administrateurs reçoivent un message d’erreur incorrect lors de la suppression d’un tag vide.

Tag vide :

Message d’erreur incorrect :

Peux-tu reproduire le problème @tshenry ?

1 « J'aime »

Ok, je reformule ma réponse car je suis presque certain d’avoir compris tout ce qui se passe ici :slight_smile:

Comme le mentionne @ninjapenguin, si vous avez un tag et que vous supprimez tous les sujets auxquels ce tag est appliqué, le tag reste listé sur la page des tags et le compteur ne change pas. Je pense que cela est dû au fait que les sujets existent toujours techniquement et continuent de conserver le tag.

@syl, si vous naviguez vers la liste des sujets du tag tete comme montré dans votre capture d’écran, puis ajoutez

?status=deleted

au bout de l’URL, vous devriez voir deux sujets supprimés listés avec le tag tete.

Le message d’information dans votre deuxième capture d’écran correspond au nombre de sujets supprimés auxquels le tag est appliqué.


J’ai l’impression que nous ne devrions probablement pas prendre en compte les sujets supprimés lors du comptage ou de l’affichage des tags, mais cela pourrait ne pas être un changement super trivial étant donné la façon dont tout est stocké dans la base de données. Qu’en pensez-vous @codinghorror ?

2 « J'aime »

C’est exact.

Dans un forum standard, je pense que les sujets supprimés expliquent la plupart des écarts entre le nombre de sujets affiché dans la liste des tags et le nombre réel de sujets qu’un utilisateur peut voir dans chaque tag. Corriger cela serait déjà un grand progrès. Mais notez que des écarts se produisent également lorsqu’un utilisateur non administrateur consulte un tag contenant des sujets privés.

Je ne parviens pas à reproduire ce comportement. Si j’ai un tag qui a uniquement été utilisé dans un MP ou dans un sujet d’une catégorie restreinte, un utilisateur n’ayant pas accès à ces sujets ne voit pas ce tag apparaître dans la liste des tags.

Le seul comportement regrettable que je constate actuellement est celui que j’ai mentionné concernant les sujets supprimés.

1 « J'aime »

Désolé pour la confusion, je parlais du compteur de tags. Voici comment reproduire le problème :

  1. En tant qu’administrateur, créez un sujet sans catégorie et avec un nouveau tag
  2. En tant qu’administrateur, créez un autre sujet avec le même tag et appartenant à une catégorie restreinte
  3. En tant qu’utilisateur normal, accédez au tag test-tag et vérifiez que vous ne voyez qu’un seul sujet
  4. Cependant, dans la liste des tags, le compteur indique 2
1 « J'aime »

Ok, merci, je vois maintenant.

J’ai examiné le code et j’ai remarqué quelques points.

D’après ce que j’observe, il ne s’agit pas d’un bug, mais simplement d’une limitation liée à l’implémentation actuelle. Je pense que tout ce qui a été évoqué ici relève d’une “demande de fonctionnalité” et peut être résumé ainsi :

Rendre dynamiques les compteurs de tags sur la page des tags afin qu’ils reflètent ce que l’utilisateur verra réellement lorsqu’il naviguera vers la liste des sujets associés à un tag.

1 « J'aime »

Merci beaucoup @tshenry. Cela semble très bien et pourrait expliquer pourquoi j’ai rencontré le problème beaucoup plus souvent sur mon instance de développement (peut-être que la tâche de cohérence ne s’y exécute pas). Je vais vérifier cela.

P.S. : pour l’instant, la balise documentation ici sur Meta affiche un comptage de 5, mais je ne vois que 4 sujets. Je vérifierai à nouveau dans 12 heures :slight_smile:

1 « J'aime »