Это довольно редкая ситуация, полная необычных граничных случаев, но хотя бы я могу подать отчёт об ошибке.
Воспроизведение на tests-passed
Создайте тему
Скройте её из списка
Установите таймер темы для планирования публикации в категорию в будущем.
Когда другие пользователи просматривают эту тему — до её фактической публикации — и у них нет доступа к будущей категории, код, который должен отображать «Эта тема будет опубликована в #category через x дней», приводит к сбою (поскольку не может получить slug будущей категории) и вызывает бесконечную перезагрузку страницы.
Да, это очень редкий случай: публикация темы в более закрытую категорию, когда у пользователей есть доступ к скрытой теме.
Спасибо за этот пост, Ричард. Мы используем Discourse в качестве гибридной платформы для форума и LMS (системы управления обучением), и подобные нестандартные случаи возникают.
Я хотел подтвердить, что наблюдаю такое же поведение.
Выполнил шаги воспроизведения, как описано, а затем просмотрел тему как пользователь, у которого нет прав доступа к категории, в которую тема была назначена для публикации.
Заголовок темы отображается снова и снова каждые несколько секунд, пока страница не будет закрыта.
Без установки таймера для публикации темы в категорию, к которой у пользователя нет доступа, тема отображается как обычно (всё ещё как не включённая в список).
Версия Discourse: 2.9.0.beta3
В данной ситуации я ожидал бы, что тема будет отображаться как обычная не включённая в список тема в исходной категории, в которой она была создана (до момента запланированной публикации), либо будет показано сообщение о том, что у пользователя нет прав доступа к этой категории тем.
Конечно, это редкий частный случай, но надеюсь, эта информация поможет исправить эту ошибку.