Как массово удалить личные сообщения?

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

Я включил опцию «Первое решение принято» в автоматизации и думал, что уведомление будет отправлено только один раз, но оно отправляется с каждым решением (и/или повторно).

Спасибо :slight_smile:

Вы можете использовать массовые действия в вашем почтовом ящике, если вы это имеете в виду?

Также, вероятно, можно сделать это через консоль Rails.

Привет, спасибо за быстрый ответ!

Я спрашиваю про удаление личных сообщений у всех пользователей. Должна ли опция массового удаления работать именно так?

Ой. Это кажется чрезмерным. Что случилось?

То, что я ранее указал:

Мы находились на этапе открытого бета-тестирования, так что это не так уж и плохо, но мне действительно нужно удалить тонну личных сообщений :slight_smile:

Ах, я неправильно прочитал: подумал «каждый PM», а не «группа PM, подходящих под шаблон». У вас есть доступ к серверу, чтобы что-то запустить через консоль Rails? Или, возможно, лучше воспользоваться API.

В Административных массовых операциях должны быть подсказки для взрослых. Если вы сможете найти пример с PostDestroyer и пример, который выбирает темы по совпадению заголовка, я думаю. Это при условии, что вы используете собственный хостинг и имеете доступ к Rails.

Я точно смогу освоить Rails! Есть какие-нибудь подсказки или примеры для начала?

Спасибо!

Найдите PostDestroyer и перейдите по ссылке, например: How to bulk delete old whispers - #2 by tshenry

Подходит ли это вам, ребята? Можно ли это улучшить?

 Topic.where("archetype = 'private_message' AND title ILIKE ?", "%something%").find_each do |t|
   PostDestroyer.new(Discourse.system_user, t.ordered_posts.first).destroy
   puts "Удалено ЛС: #{t.id} - #{t.title}"
 end

Это должно быть возможно через интерфейс, на случай если это предпочтительный способ.

Если вы используете фильтр поиска in:all-pms вместе с заголовком или ключевыми словами из вашего автоматического сообщения, они должны появиться в результатах поиска. Затем вы можете применить массовые действия и удалить их со страницы результатов.