Ошибка при удалении темы, которая уже получила ответ

Привет :slight_smile:

Когда я пытаюсь удалить тему, на которую уже есть ответы, появляется ошибка.

  1. Я создаю новую тему.
  2. Я отвечаю на эту тему.
  3. Я пытаюсь удалить эту тему.
  4. Появляется сообщение: Произошла ошибка: Не удалось удалить тему. Пожалуйста, обратитесь к администратору сайта.

Как это должно обрабатываться?
Я заметил, что иногда кнопка удаления скрыта, хотя кнопка редактирования доступна, а иногда кнопка удаления видна, но сообщает, что у меня нет прав на удаление темы.

Вы не можете удалить некоторые темы — те, которые автоматически создаются в Discourse, например, темы «О категории».

Я создал тему на своей (актуальной) установке, ответил на неё и смог удалить тему.

  • Можете ли вы привести примеры тем, которые не удаляются?
  • Вы администратор или модератор?
  • Какие права доступа установлены для категории?
  • Пробовали ли вы в безопасном режиме?
  • Есть ли ошибки в консоли JavaScript или во вкладке Network в инструментах разработчика вашего браузера?
  • Есть ли ошибки в /logs?
3 лайка

О, так в чём же разница здесь?

https://try.discourse.org/t/test-for-deleting-a-topic-which-has-already-been-answered/1502

Кнопка удаления всё ещё скрыта.
Мне попробовать снова, или вы сможете воспроизвести это там?

Никто из них.

Думаю, нет. Не знаю, как это называется у вас.
Вы должны увидеть это, если вам удастся воспроизвести проблему. Пожалуйста, сообщите, если у вас не получится.

Я знаю, что кнопка «Удалить» отображается даже если у темы есть ответы, и в этом случае удаление темы запрещено. Текст при наведении курсора также это отражает. Пример из последней темы, которую я создал на Meta:
у вас нет прав на удаление этой темы
Но я не припоминаю случая, когда кнопка «Редактировать» была бы видна, а кнопка «Удалить» — нет.

1 лайк

Вот что я вижу здесь (например, для этой темы).

Вот что я вижу там спустя некоторое время: https://try.discourse.org/t/test-for-deleting-a-topic-which-has-already-been-answered/1502

Я не знаю точно, сколько времени прошло, но это могло быть 1 час, так как я создал https://try.discourse.org/t/test-for-deleting-a-topic-which-has-already-been-answered/1502, чтобы продолжить тестирование после того, как это произошло с https://try.discourse.org/t/1st-test-for-deleting-a-topic-which-has-already-been-answered/1500.

Также я не знаю, должно ли в теме уже быть ответ, чтобы это произошло.
И я пока не могу это проверить: Произошла ошибка: Мы ценим ваш энтузиазм! Однако, в целях безопасности нашего сообщества, вы достигли максимального количества тем, которые новый пользователь может создать в первый день. Пожалуйста, подождите 20 часов, и вы сможете создавать новые темы.

Но тогда ваши права на удаление и восстановление очень ограничены :thinking:

По умолчанию пользователи не могут редактировать или удалять свои сообщения спустя 24 часа (30 дней для пользователей с уровнем доверия 2), что может объяснять, почему вы не можете удалить некоторые свои сообщения.

Ссылки на try.discourse.org быстро становятся недействительными, так как этот экземпляр сбрасывается каждый день.

Так почему бы не написать «вам не разрешено удалять тему», вместо того чтобы показывать ошибку?

2 лайка

Даже если вы не видите моих тестов, вы пытались воспроизвести то, о чём я говорил, и у вас получилось или нет?

Кстати, почему бы не сбрасывать try.discourse.org раз в неделю, чтобы мы могли тестировать подобные вещи?