L'utilisateur ne peut pas voir son message personnel

Salutations à tous les participants du forum et à l’équipe Discourse !
Une erreur non spécifiée s’est produite sur mon site. Un utilisateur ou un employé du site (sauf l’administrateur) ne peut pas voir son message personnel. Le titre d’un message privé apparaît dans la liste générale des messages, mais cliquer sur le lien n’ouvre pas le contenu complet. J’ai essayé de désactiver tous les plugins et composants de thème, j’ai même essayé de supprimer tout le CSS, mais rien n’a aidé. Voici comment c’est écrit :

Voici ce qui est affiché lorsque l’utilisateur tente de rafraîchir la page du navigateur :

Voici l’écran de la console :

Il y a peut-être plus de détails si vous consultez votre page /logs. Pourriez-vous y jeter un œil et coller les informations ici dans un bloc de code ?

Avez-vous désactivé les plugins via les paramètres ou les avez-vous supprimés du fichier yml et reconstruit ? Si vous ne les avez pas supprimés et reconstruits, vous devriez le faire.

Désolé pour cette longue réponse :pray: Voici tout ce qu’il y avait :

Avis de dépréciation : Les types de tableau pour les champs personnalisés sont dépréciés, utilisez le type :json à la place (suppression dans Discourse 3.3.0) À /var/www/discourse/lib/plugin/instance.rb:561:in `block in register_topic_cust

24 nov. 21:33

Avis de dépréciation : Les types de tableau pour les champs personnalisés sont dépréciés, utilisez le type :json à la place (suppression dans Discourse 3.3.0) À /var/www/discourse/lib/plugin/instance.rb:576:in `block in register_user_custo

24 nov. 21:33

Avis de dépréciation : Les types de tableau pour les champs personnalisés sont dépréciés, utilisez le type :json à la place (suppression dans Discourse 3.3.0) À /var/www/discourse/lib/plugin/instance.rb:566:in `block in register_post_custo

24 nov. 21:33

Avis de dépréciation : L'argument respect_plugin_enabled de add_to_serializer doit être passé en tant qu'argument nommé À /var/www/discourse/plugins/discourse-category-lockdown/plugin.rb:21:in `block in acti

24 nov. 21:33

Avis de dépréciation : add_to_serializer ne doit pas être utilisé pour remplacer directement les méthodes include_*. Utilisez l'argument nommé include_condition à la place À /var/www/discourse/plugins/discourse-custom-wiz

24 nov. 21:33

Avis de dépréciation : add_to_serializer ne doit pas être utilisé pour remplacer directement les méthodes include_*. Utilisez l'argument nommé include_condition à la place À /var/www/discourse/plugins/discourse-custom-wiz

24 nov. 21:33

Avis de dépréciation : L'argument respect_plugin_enabled de add_to_serializer doit être passé en tant qu'argument nommé À /var/www/discourse/plugins/discourse-ratings/plugin.rb:202:in `block in activate!`

24 nov. 21:33

Avis de dépréciation : add_to_serializer ne doit pas être utilisé pour remplacer directement les méthodes include_*. Utilisez l'argument nommé include_condition à la place À /var/www/discourse/plugins/discourse-ratings/pl

24 nov. 21:33

Avis de dépréciation : add_to_serializer ne doit pas être utilisé pour remplacer directement les méthodes include_*. Utilisez l'argument nommé include_condition à la place À /var/www/discourse/plugins/discourse-ratings/pl

24 nov. 21:33

Avis de dépréciation : Les types de tableau pour les champs personnalisés sont dépréciés, utilisez le type :json à la place (suppression dans Discourse 3.3.0) À /var/www/discourse/lib/plugin/instance.rb:556:in `block in register_category_c

24 nov. 21:33

Avis de dépréciation : L'événement :post_notification_alert est déprécié. Veuillez utiliser :push_notification à la place (déprécié depuis Discourse 3.2.0.beta1) (suppression dans Discourse 3.3.0.beta1) À /var/www/dis

24 nov. 21:33

4

ActiveRecord::StatementInvalid (PG::UndefinedColumn: ERREUR : la colonne "thread_id" n'existe pas LIGNE 1 : ..._drafts"."chat_channel_id", "chat_drafts"."data", "thread_id...

24 nov. 22:45

4

Échec de la gestion de l'exception dans le middleware de l'application d'exception : ActiveRecord::StatementInvalid : PG::UndefinedColumn: ERREUR : la colonne "thread_id" n'existe pas LIGNE 1 : ..._drafts"."chat_channel_id", "chat_dr

24 nov. 22:45

17

Vidage du cache Active Record, cela peut se produire si le schéma a changé pendant que le site est en cours d'exécution ou, dans un environnement multisite, si différentes bases de données exécutent des schémas différents. Envisagez d'exécuter rake multisite:migrate.

24 nov. 22:45

11

ActiveRecord::StatementInvalid (PG::UndefinedColumn: ERREUR : la colonne "thread_id" n'existe pas LIGNE 1 : ..._drafts"."chat_channel_id", "chat_drafts"."data", "thread_id...

24 nov. 22:45

11

Échec de la gestion de l'exception dans le middleware de l'application d'exception : ActiveRecord::StatementInvalid : PG::UndefinedColumn: ERREUR : la colonne "thread_id" n'existe pas LIGNE 1 : ..._drafts"."chat_channel_id", "chat_dr

24 nov. 22:45

3

[Passerelle Telegram] Échec du pontage du message : [1/12] [stratégie] 'require_plugin_enabled' ✅ [2/12] [contrat] 'default' ✅ [3/12] [modèle] 'channel_id' ❌ [4/12] [stratégie] 'require_channel_id_vaild' [5/12] [p

25 nov. 00:49

[Passerelle Telegram] Échec du pontage du message : [1/12] [stratégie] 'require_plugin_enabled' ✅ [2/12] [contrat] 'default' ✅ [3/12] [modèle] 'channel_id' ❌ [4/12] [stratégie] 'require_channel_id_vaild' [5/12] [p

25 nov. 00:49

24

Impossible de rebake le post # 612 après 3 tentatives, abandon : ActiveRecord::RecordNotFound : Impossible de trouver Topic avec 'id'=137 [WHERE "topics"."deleted_at" IS NULL]

25 nov. 01:24

24

Exception de tâche : Impossible de trouver Topic avec 'id'=137 [WHERE "topics"."deleted_at" IS NULL]

25 nov. 01:24

4

Avis de dépréciation : L'argument respect_plugin_enabled de add_to_serializer doit être passé en tant qu'argument nommé À /var/www/discourse/plugins/discourse-ai-topic-summary/plugin.rb:32:in `block in activ

25 nov. 20:45

5

Avis de dépréciation : Les types de tableau pour les champs personnalisés sont dépréciés, utilisez le type :json à la place (suppression dans Discourse 3.3.0) À /var/www/discourse/lib/plugin/instance.rb:561:in `block in register_topic_cust

25 nov. 20:45

5

Avis de dépréciation : Les types de tableau pour les champs personnalisés sont dépréciés, utilisez le type :json à la place (suppression dans Discourse 3.3.0) À /var/www/discourse/lib/plugin/instance.rb:576:in `block in register_user_custo

25 nov. 20:45

5

Avis de dépréciation : Les types de tableau pour les champs personnalisés sont dépréciés, utilisez le type :json à la place (suppression dans Discourse 3.3.0) À /var/www/discourse/lib/plugin/instance.rb:566:in `block in register_post_custo

25 nov. 20:45

4

Avis de dépréciation : L'argument respect_plugin_enabled de add_to_serializer doit être passé en tant qu'argument nommé À /var/www/discourse/plugins/discourse-category-lockdown/plugin.rb:21:in `block in acti

25 nov. 20:45

4

Avis de dépréciation : add_to_serializer ne doit pas être utilisé pour remplacer directement les méthodes include_*. Utilisez l'argument nommé include_condition à la place À /var/www/discourse/plugins/discourse-custom-wiz

25 nov. 20:45

4

Avis de dépréciation : add_to_serializer ne doit pas être utilisé pour remplacer directement les méthodes include_*. Utilisez l'argument nommé include_condition à la place À /var/www/discourse/plugins/discourse-custom-wiz

25 nov. 20:45

4

Avis de dépréciation : L'argument respect_plugin_enabled de add_to_serializer doit être passé en tant qu'argument nommé À /var/www/discourse/plugins/discourse-ratings/plugin.rb:202:in `block in activate!`

25 nov. 20:45

4

Avis de dépréciation : add_to_serializer ne doit pas être utilisé pour remplacer directement les méthodes include_*. Utilisez l'argument nommé include_condition à la place À /var/www/discourse/plugins/discourse-ratings/pl

25 nov. 20:45

4

Avis de dépréciation : add_to_serializer ne doit pas être utilisé pour remplacer directement les méthodes include_*. Utilisez l'argument nommé include_condition à la place À /var/www/discourse/plugins/discourse-ratings/pl

25 nov. 20:45

5

Avis de dépréciation : Les types de tableau pour les champs personnalisés sont dépréciés, utilisez le type :json à la place (suppression dans Discourse 3.3.0) À /var/www/discourse/lib/plugin/instance.rb:556:in `block in register_category_c

25 nov. 20:45

4

Avis de dépréciation : L'événement :post_notification_alert est déprécié. Veuillez utiliser :push_notification à la place (déprécié depuis Discourse 3.2.0.beta1) (suppression dans Discourse 3.3.0.beta1) À /var/www/dis

25 nov. 20:45

298

Sidekiq consomme trop de mémoire (utilisation : 679,16 Mo) pour 'neurogid.com', redémarrage

25 nov. 23:27

Avis de dépréciation : le paramètre :meta_data est déprécié, utilisez le paramètre :topic_custom_fields à la place (déprécié depuis Discourse 3.2) (suppression dans Discourse 3.3) À <internal:kernel>:90:in `tap`

25 nov. 23:37

8

MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb

25 nov. 23:44

8

MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb

25 nov. 23:44

16

MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb

25 nov. 23:45

16

MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) introuvable : No such file or directory @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb

25 nov. 23:45

2

[Passerelle Telegram] Échec du pontage du message : [1/12] [stratégie] 'require_plugin_enabled' ✅ [2/12] [contrat] 'default' ✅ [3/12] [modèle] 'channel_id' ❌ [4/12] [stratégie] 'require_channel_id_vaild' [5/12] [p

Dim 09:20

3

[Passerelle Telegram] Échec du pontage du message : [1/12] [stratégie] 'require_plugin_enabled' ✅ [2/12] [contrat] 'default' ✅ [3/12] [modèle] 'channel_id' ❌ [4/12] [stratégie] 'require_channel_id_vaild' [5/12] [p

Dim 15:30

17

Exception de tâche : méthode non définie `include?' pour nil:NilClass

00:24

20

OpenAIBot Post Embedding : Il y a eu un problème, mais une nouvelle tentative sera effectuée jusqu'à la limite : méthode non définie `destroy!' pour nil:NilClass

10:25

3

[Passerelle Telegram] Échec du pontage du message : [1/12] [stratégie] 'require_plugin_enabled' ✅ [2/12] [contrat] 'default' ✅ [3/12] [modèle] 'channel_id' ❌ [4/12] [stratégie] 'require_channel_id_vaild' [5/12] [p

11:11

[Passerelle Telegram] Échec du pontage du message : [1/12] [stratégie] 'require_plugin_enabled' ✅ [2/12] [contrat] 'default' ✅ [3/12] [modèle] 'channel_id' ❌ [4/12] [stratégie] 'require_channel_id_vaild' [5/12] [p

11:38

27

NoMethodError (méthode non définie `enable_personal_messages?' pour SiteSetting:Class) app/serializers/topic_view_details_serializer.rb:127:in `include_can_invite_to?' (eval):11:in `_fast_attributes' lib/

14:20

6

NoMethodError (méthode non définie `enable_personal_messages?' pour SiteSetting:Class) app/serializers/topic_view_details_serializer.rb:127:in `include_can_invite_to?' (eval):11:in `_fast_attributes' lib/

14:20

[Passerelle Telegram] Échec du pontage du message : [1/12] [stratégie] 'require_plugin_enabled' ✅ [2/12] [contrat] 'default' ✅ [3/12] [modèle] 'channel_id' ❌ [4/12] [stratégie] 'require_channel_id_vaild' [5/12] [p

16:22

2

[Passerelle Telegram] Échec du pontage du message : [1/12] [stratégie] 'require_plugin_enabled' ✅ [2/12] [contrat] 'default' ✅ [3/12] [modèle] 'channel_id' ❌ [4/12] [stratégie] 'require_channel_id_vaild' [5/12] [p

17:31

93

Exception de tâche : méthode non définie `include?' pour nil:NilClass

17:58

275

Exception de tâche : méthode non définie `include?' pour nil:NilClass

18:14

Oui, j’ai désactivé les plugins via les paramètres d’administration.

Idéalement, vous devriez cliquer sur l’erreur spécifique pertinente au problème et copier le message pour le coller ici. Une erreur probable pourrait être :

NoMethodError (undefined method `enable_personal_messages?' for SiteSetting:Class) app/serializers/topic_view_details_serializer.rb:127:in `include_can_invite_to?' (eval):11:in `_fast_attributes' lib/\n```

Cependant, si vous avez des plugins tiers qui affectent les MP, ce serait un endroit probable pour commencer. Comme le dit Pfaffman, le mode sans échec ne suffit parfois pas et vous devrez supprimer le plugin de votre `app.yml` et reconstruire. Quels plugins avez-vous sur votre site ?

Ce n’est pas suffisant pour désactiver complètement de nombreux plugins. Vous devez les commenter dans votre fichier app.yml et reconstruire.

Ce sera un problème, mais ce n’en est probablement pas encore un.

Utilisez-vous le multisite ?

Avez-vous l’ancien plugin de chat installé (il a maintenant été fusionné dans le cœur) ?

Vous devriez inclure la liste des plugins que vous utilisez.

Voici les plugins qui ont été installés sur le site web :






De même, @pfaffman, je ne suis pas programmeur moi-même et je pourrais mal interpréter certains de vos propos. C’est pourquoi j’ai décidé de partager le lien de ce sujet avec mon programmeur.

Je pense que c’est probablement le plugin Custom Trust Level. Je pense que quelqu’un d’autre a eu un problème similaire avec ça il y a quelque temps :

Vous (ou votre développeur) devrez supprimer ce plugin de votre app.yml et reconstruire sans lui. J’espère que cela résoudra tout. :crossed_fingers:

36 plugins, c’est beaucoup. Sachez que même s’ils sont désactivés, ils peuvent toujours avoir un impact sur votre site. Lorsque votre développeur mettra en œuvre cette correction, je lui recommanderais également de commenter tout plugin qui n’est pas actif et utilisé.

Pour information, je pense que notre plan Business est fourni avec environ 31 (tous officiels, donc probablement moins inquiétant).

Bonjour ! Oui, vous aviez raison :100: Le problème a été causé par le plugin Custom Trust Level. Notre programmeur a fait ce que vous et @pfaffman avez conseillé, très reconnaissant à tous les deux pour votre excellent soutien :pray:

Oui, vous avez peut-être raison, je comprends qu’il y ait trop de plugins et qu’à l’avenir (lors de mises à jour) des erreurs puissent survenir. Mais je viens de commencer un nouveau projet avec l’IA et je veux tester tous les plugins afin de comprendre lesquels seront vraiment utiles pour mon projet, et lesquels je n’aurai pas besoin plus tard.