Да, я не уверен, что интерфейс массово добавляет лайки тысячам пользователей. Думаю, это можно сделать, создав новую группу, а затем через rails console добавив в неё пользователей с trust_level: 0. Если вы решите пойти этим путём, обязательно сделайте резервную копию заранее.
Зачем? Какую проблему это решает? Планируете ли вы позже удалить некоторых из них? Почему бы просто не использовать trust_level_0 или trust_level_1? Скорее всего, что бы вы ни пытались сделать, добавление всех пользователей в группу — не лучший способ решения проблемы.
Вы можете сделать это через Rails. Думаю, это сработает.
group = Group.find_by_name('my_group')
User.all.each do |user|
GroupUser.create!(user_id: user.id, group_id: group.id)
end
Я написал плагин, который может помочь, хотя он не до конца протестирован, и у того, кто пробовал его использовать, возникли трудности. Если у вас есть бюджет или вы готовы рискнуть, вы можете связаться со мной.
Я хотел бы упомянуть в теме (и отправить уведомление по электронной почте) всех участников. Сработает ли это для группы Trust_level_0? В идеале я предпочел бы создать новую группу, чтобы задать своё название.
Может быть, просто создать категорию «Объявления» и настроить всем участникам отслеживание этой категории?
Вы можете добавить всех участников через Rails, как я предлагал, но это не добавит новых пользователей.
Возможно, стоит посмотреть на плагин автоматизации и групповое членство через бейджи. Похоже, можно создать пользовательский бейдж, который будет добавлять пользователей с этим бейджем в группу: Discourse Automation
Максимальное количество пользователей, которое можно добавить за один раз в форму «Добавить пользователей» группы, составляет 1000. Судя по коду, если вы попытаетесь добавить больше, должно появиться сообщение об ошибке, похожее на это:
«Максимум 1000 пользователей можно добавить за один раз».
Должен быть какой-то лимит, иначе Discourse рискует выдать необработанную ошибку. Чтобы обойти это ограничение, мне нравится подход с плагином Автоматизации, который предложил Джей.
Почему бы не использовать инкапсулированный интерфейс group.add(user)? Не возникнет ли потенциальных проблем при прямом манипулировании ActiveRecords таким образом?