Приветствую всех участников форума и команду Discourse!
На моём сайте возникла неуказанная ошибка. Пользователь или сотрудник сайта (кроме администратора) не может увидеть своё личное сообщение. Заголовок частного сообщения отображается в общем списке сообщений, но при клике на ссылку полное содержимое не открывается. Я попытался отключить все плагины и компоненты темы, даже удалил весь CSS, но это не помогло. Вот что отображается:
Предупреждение об устаревании: Типы массивов для пользовательских полей устарели, используйте тип :json вместо этого (удаление в Discourse 3.3.0) В /var/www/discourse/lib/plugin/instance.rb:561:in `block in register_topic_cust
24 ноя 21:33
Предупреждение об устаревании: Типы массивов для пользовательских полей устарели, используйте тип :json вместо этого (удаление в Discourse 3.3.0) В /var/www/discourse/lib/plugin/instance.rb:576:in `block in register_user_custo
24 ноя 21:33
Предупреждение об устаревании: Типы массивов для пользовательских полей устарели, используйте тип :json вместо этого (удаление в Discourse 3.3.0) В /var/www/discourse/lib/plugin/instance.rb:566:in `block in register_post_custo
24 ноя 21:33
Предупреждение об устаревании: Аргумент add_to_serializer's respect_plugin_enabled должен передаваться как именованный аргумент. В /var/www/discourse/plugins/discourse-category-lockdown/plugin.rb:21:in `block in acti
24 ноя 21:33
Предупреждение об устаревании: add_to_serializer не следует использовать для прямого переопределения методов include_*?. Вместо этого используйте именованный аргумент include_condition. В /var/www/discourse/plugins/discourse-custom-wiz
24 ноя 21:33
Предупреждение об устаревании: add_to_serializer не следует использовать для прямого переопределения методов include_*?. Вместо этого используйте именованный аргумент include_condition. В /var/www/discourse/plugins/discourse-custom-wiz
24 ноя 21:33
Предупреждение об устаревании: Аргумент add_to_serializer's respect_plugin_enabled должен передаваться как именованный аргумент. В /var/www/discourse/plugins/discourse-ratings/plugin.rb:202:in `block in activate!`
24 ноя 21:33
Предупреждение об устаревании: add_to_serializer не следует использовать для прямого переопределения методов include_*?. Вместо этого используйте именованный аргумент include_condition. В /var/www/discourse/plugins/discourse-ratings/pl
24 ноя 21:33
Предупреждение об устаревании: add_to_serializer не следует использовать для прямого переопределения методов include_*?. Вместо этого используйте именованный аргумент include_condition. В /var/www/discourse/plugins/discourse-ratings/pl
24 ноя 21:33
Предупреждение об устаревании: Типы массивов для пользовательских полей устарели, используйте тип :json вместо этого (удаление в Discourse 3.3.0) В /var/www/discourse/lib/plugin/instance.rb:556:in `block in register_category_c
24 ноя 21:33
Предупреждение об устаревании: Событие :post_notification_alert устарело. Пожалуйста, используйте :push_notification вместо этого (устарело с Discourse 3.2.0.beta1) (удаление в Discourse 3.3.0.beta1) В /var/www/dis
24 ноя 21:33
4
ActiveRecord::StatementInvalid (PG::UndefinedColumn: ОШИБКА: столбец "thread_id" не существует LINE 1: ..._drafts"."chat_channel_id", "chat_drafts"."data", "thread_id...
24 ноя 22:45
4
Не удалось обработать исключение в промежуточном ПО приложения исключений: ActiveRecord::StatementInvalid : PG::UndefinedColumn: ОШИБКА: столбец "thread_id" не существует LINE 1: ..._drafts"."chat_channel_id", "chat_dr
24 ноя 22:45
17
Очистка кэша Active Record. Это может произойти, если схема изменилась во время работы сайта или в мульти-сайте различные базы данных используют разные схемы. Рекомендуется выполнить rake multisite:migrate.
24 ноя 22:45
11
ActiveRecord::StatementInvalid (PG::UndefinedColumn: ОШИБКА: столбец "thread_id" не существует LINE 1: ..._drafts"."chat_channel_id", "chat_drafts"."data", "thread_id...
24 ноя 22:45
11
Не удалось обработать исключение в промежуточном ПО приложения исключений: ActiveRecord::StatementInvalid : PG::UndefinedColumn: ОШИБКА: столбец "thread_id" не существует LINE 1: ..._drafts"."chat_channel_id", "chat_dr
24 ноя 22:45
3
[Telegram Bridge] Не удалось передать сообщение: [1/12] [policy] 'require_plugin_enabled' ✅ [2/12] [contract] 'default' ✅ [3/12] [model] 'channel_id' ❌ [4/12] [policy] 'require_channel_id_vaild' [5/12] [p
25 ноя 00:49
[Telegram Bridge] Не удалось передать сообщение: [1/12] [policy] 'require_plugin_enabled' ✅ [2/12] [contract] 'default' ✅ [3/12] [model] 'channel_id' ❌ [4/12] [policy] 'require_channel_id_vaild' [5/12] [p
25 ноя 00:49
24
Не удалось пересобрать пост # 612 после 3 попыток, сдаюсь: ActiveRecord::RecordNotFound : Не удалось найти Topic с 'id'=137 [WHERE "topics"."deleted_at" IS NULL]
25 ноя 01:24
24
Исключение в задаче: Не удалось найти Topic с 'id'=137 [WHERE "topics"."deleted_at" IS NULL]
25 ноя 01:24
4
Предупреждение об устаревании: Аргумент add_to_serializer's respect_plugin_enabled должен передаваться как именованный аргумент. В /var/www/discourse/plugins/discourse-ai-topic-summary/plugin.rb:32:in `block in activ
25 ноя 20:45
5
Предупреждение об устаревании: Типы массивов для пользовательских полей устарели, используйте тип :json вместо этого (удаление в Discourse 3.3.0) В /var/www/discourse/lib/plugin/instance.rb:561:in `block in register_topic_cust
25 ноя 20:45
5
Предупреждение об устаревании: Типы массивов для пользовательских полей устарели, используйте тип :json вместо этого (удаление в Discourse 3.3.0) В /var/www/discourse/lib/plugin/instance.rb:576:in `block in register_user_custo
25 ноя 20:45
5
Предупреждение об устаревании: Типы массивов для пользовательских полей устарели, используйте тип :json вместо этого (удаление в Discourse 3.3.0) В /var/www/discourse/lib/plugin/instance.rb:566:in `block in register_post_custo
25 ноя 20:45
4
Предупреждение об устаревании: Аргумент add_to_serializer's respect_plugin_enabled должен передаваться как именованный аргумент. В /var/www/discourse/plugins/discourse-category-lockdown/plugin.rb:21:in `block in acti
25 ноя 20:45
4
Предупреждение об устаревании: add_to_serializer не следует использовать для прямого переопределения методов include_*?. Вместо этого используйте именованный аргумент include_condition. В /var/www/discourse/plugins/discourse-custom-wiz
25 ноя 20:45
4
Предупреждение об устаревании: add_to_serializer не следует использовать для прямого переопределения методов include_*?. Вместо этого используйте именованный аргумент include_condition. В /var/www/discourse/plugins/discourse-custom-wiz
25 ноя 20:45
4
Предупреждение об устаревании: Аргумент add_to_serializer's respect_plugin_enabled должен передаваться как именованный аргумент. В /var/www/discourse/plugins/discourse-ratings/plugin.rb:202:in `block in activate!`
25 ноя 20:45
4
Предупреждение об устаревании: add_to_serializer не следует использовать для прямого переопределения методов include_*?. Вместо этого используйте именованный аргумент include_condition. В /var/www/discourse/plugins/discourse-ratings/pl
25 ноя 20:45
4
Предупреждение об устаревании: add_to_serializer не следует использовать для прямого переопределения методов include_*?. Вместо этого используйте именованный аргумент include_condition. В /var/www/discourse/plugins/discourse-ratings/pl
25 ноя 20:45
5
Предупреждение об устаревании: Типы массивов для пользовательских полей устарели, используйте тип :json вместо этого (удаление в Discourse 3.3.0) В /var/www/discourse/lib/plugin/instance.rb:556:in `block in register_category_c
25 ноя 20:45
4
Предупреждение об устаревании: Событие :post_notification_alert устарело. Пожалуйста, используйте :push_notification вместо этого (устарело с Discourse 3.2.0.beta1) (удаление в Discourse 3.3.0.beta1) В /var/www/dis
25 ноя 20:45
298
Sidekiq потребляет слишком много памяти (использует: 679.16M) для 'neurogid.com', перезагрузка
25 ноя 23:27
Предупреждение об устаревании: параметр :meta_data устарел, используйте параметр :topic_custom_fields вместо этого (устарело с Discourse 3.2) (удаление в Discourse 3.3) В <внутренний:ядро>:90:in `tap`
25 ноя 23:37
8
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) не найден: Нет такого файла или каталога @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
25 ноя 23:44
8
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) не найден: Нет такого файла или каталога @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
25 ноя 23:44
16
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-City.mmdb) не найден: Нет такого файла или каталога @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-City.mmdb
25 ноя 23:45
16
MaxMindDB (/var/www/discourse/vendor/data/GeoLite2-ASN.mmdb) не найден: Нет такого файла или каталога @ rb_sysopen - /var/www/discourse/vendor/data/GeoLite2-ASN.mmdb
25 ноя 23:45
2
[Telegram Bridge] Не удалось передать сообщение: [1/12] [policy] 'require_plugin_enabled' ✅ [2/12] [contract] 'default' ✅ [3/12] [model] 'channel_id' ❌ [4/12] [policy] 'require_channel_id_vaild' [5/12] [p
Вс 09:20
3
[Telegram Bridge] Не удалось передать сообщение: [1/12] [policy] 'require_plugin_enabled' ✅ [2/12] [contract] 'default' ✅ [3/12] [model] 'channel_id' ❌ [4/12] [policy] 'require_channel_id_vaild' [5/12] [p
Вс 15:30
17
Исключение в задаче: undefined method `include?' for nil:NilClass
00:24
20
OpenAIBot Post Embedding: Возникла проблема, но будет повторная попытка до достижения лимита: undefined method `destroy!' for nil:NilClass
10:25
3
[Telegram Bridge] Не удалось передать сообщение: [1/12] [policy] 'require_plugin_enabled' ✅ [2/12] [contract] 'default' ✅ [3/12] [model] 'channel_id' ❌ [4/12] [policy] 'require_channel_id_vaild' [5/12] [p
11:11
[Telegram Bridge] Не удалось передать сообщение: [1/12] [policy] 'require_plugin_enabled' ✅ [2/12] [contract] 'default' ✅ [3/12] [model] 'channel_id' ❌ [4/12] [policy] 'require_channel_id_vaild' [5/12] [p
11:38
27
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/
14:20
6
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/
14:20
[Telegram Bridge] Не удалось передать сообщение: [1/12] [policy] 'require_plugin_enabled' ✅ [2/12] [contract] 'default' ✅ [3/12] [model] 'channel_id' ❌ [4/12] [policy] 'require_channel_id_vaild' [5/12] [p
16:22
2
[Telegram Bridge] Не удалось передать сообщение: [1/12] [policy] 'require_plugin_enabled' ✅ [2/12] [contract] 'default' ✅ [3/12] [model] 'channel_id' ❌ [4/12] [policy] 'require_channel_id_vaild' [5/12] [p
17:31
93
Исключение в задаче: undefined method `include?' for nil:NilClass
17:58
275
Исключение в задаче: undefined method `include?' for nil:NilClass
18:14
В идеале вам нужно щёлкнуть по конкретной ошибке, связанной с проблемой, и скопировать сообщение, чтобы вставить его сюда. Вероятным вариантом может быть следующее:
Хотя, если у вас есть сторонние плагины, влияющие на личные сообщения, то стоит начать именно с них. Как отмечает Pfaffman, иногда безопасного режима недостаточно, и вам придётся удалить плагин из файла app.yml и пересобрать систему. Какие плагины установлены на вашем сайте?
Так же, как и @pfaffman, я сам не программист и могу неправильно интерпретировать некоторые ваши слова. Поэтому я решил поделиться ссылкой на эту тему с моим программистом.
36 плагинов — это много. Имейте в виду, что даже если они отключены, они всё ещё могут влиять на работу вашего сайта. Когда ваш разработчик будет внедрять это исправление, я также рекомендую попросить его закомментировать любой плагин, который не активен и не используется.
Кстати, я думаю, что наш тарифный план Business поставляется с примерно 31 интеграцией (все официальные, так что, вероятно, меньше поводов для беспокойства).
Привет! Да, вы были правы Проблема была вызвана плагином Custom Trust Level. Наш программист поступил так, как вы и @pfaffman посоветовали. Очень благодарны вам обоим за отличную поддержку
Да, возможно, вы правы. Я понимаю, что плагинов слишком много, и в будущем (во время любых обновлений) могут возникать ошибки. Но я только начинаю новый проект с использованием ИИ и хочу протестировать все плагины, чтобы понять, какие из них действительно пригодятся для моего проекта, а какие в дальнейшем не понадобятся.