Les notifications utilisateur "all" sont vides, mais les réponses, likes, etc. contiennent des éléments

J’ai reçu un rapport indiquant que les notifications d’un utilisateur se chargeaient lors du clic sur l’avatar. (Il s’agit d’une mise à jour récente exécutant la version 2.4.0.beta10). Il y a un seul plugin non standard, mais il semble peu probable qu’il soit à l’origine du problème, et l’incident ne concerne qu’un seul utilisateur (du moins que nous sachions). (J’ai ensuite effectué une mise à jour sans mon plugin, mais cela n’a pas résolu le problème.) Le mode safe-mode n’a pas aidé.

Lorsque je vais sur /u/nom_utilisateur/notifications pour un utilisateur particulier, aucune notification n’est affichée, mais cliquer sur « réponses », « likes », etc. affiche des éléments dans chacun de ces types de notifications. Je suis allé dans psql et j’ai exécuté un reindex table notifications sans erreur.

Le clic sur l’avatar génère cette erreur dans la console JavaScript :

_application-4715c32620ba9b83af00144510f68ca0f0bae8f745edf2339e3f249ceee88c3f.js:77240 Uncaught TypeError: Cannot read property 'dasherize' of undefined

En examinant le code,

      return [this.attach(notificationName.dasherize() + "-notification-item", attrs, {}, { fallbackWidgetName: "default-notification-item" }), (0, _virtualDom.h)("span.time", (0, _node.dateNode)(attrs.created_at))];

il me semble (et cela pourrait être complètement faux) que le problème vient du fait qu’il reçoit une erreur ou nil/null/une valeur vide lors de la récupération des notifications ?

Je peux récupérer les notifications de l’utilisateur dans Rails sans incident :

 pry(main)> Notification.where(user_id: 870).count
=> 372
# cela renvoie également des résultats :
u=User.find(870)
Notification.recent_report(u)

Je n’ai plus d’idées.

@pfaffman Avez-vous résolu ce problème ? Je rencontre le même problème.

Désolé. Je ne me souviens ni de l’avoir réparé ni du fait qu’il soit toujours cassé, et je ne me rappelle pas non plus où cela se trouvait. :man_shrugging:

Ok. Pour l’instant, j’ai tout essayé : supprimé tous les plugins non officiels, retiré Cloudflare, reconstruit plusieurs fois de suite… vidé le stockage du navigateur… mais pour certains utilisateurs, le problème persiste, alors que sur le même appareil, il ne se produit pas pour d’autres utilisateurs. Et le message d’erreur que je vois est exactement le même que le vôtre. Ensuite, j’ai essayé avec mon téléphone portable et cela fonctionne. Je suppose que c’est pourquoi vous ne vous souvenez pas de l’avoir corrigé. Je ne sais pas si c’est dû à un plugin ou s’il s’agit uniquement d’un problème local lié à l’appareil. J’espère que cela ne se produit que sur mon bureau :slight_smile:

Cela se produit-il lorsque toutes les extensions de navigateur sont désactivées (mode navigation privée) ?

Oui, cela se produit également en mode navigation privée, mais moins souvent. Peut-être que mon disque dur en est responsable, ainsi que l’espace de stockage utilisé et le quota, qui sont probablement différents. Voici une capture d’écran en mode navigation privée. Je ne devrais pas m’inquiéter de ce problème s’il ne se produit que sur ma machine :thinking:

@pfaffman La réactivation du plugin discourse-follow a résolu le problème pour moi :slight_smile: