Массовое изменение конфигурации через CLI в нескольких профилях пользователей/предпочтениях

Да, это можно сделать через консоль Rails. Чтобы открыть консоль Rails, выполните ./launcher enter app, затем введите rails c в приглашении, чтобы запустить консоль.

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

Сначала получите список локалей, используемых Discourse:

I18n.available_locales

Это выведет длинный список символов, которые Discourse использует для локалей. Например: :be, :bg, :bs_BA, :ca...

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

u = User.find(1)
u.update(locale: :fr)

Если вы хотите перебрать всех пользователей, вам нужно будет найти способ получить массивы пользователей для каждой локали, чтобы можно было перебирать их. Если у вас есть списки имён пользователей для каждой локали, их можно использовать для поиска пользователей. Простой способ сделать это из консоли — преобразовать список имён пользователей в массив. Например:

fr_users = ['bob', 'sally', 'john']

fr_users.each do |username|
    u = User.find_by(username: username)
    u.update(locale: :fr)
end

Если вы решите попробовать это, действуйте осторожно. Обязательно создайте резервную копию базы данных вашего сайта перед внесением изменений.