複数のユーザープロファイル/設定で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

これを試す場合は、慎重に行ってください。変更を加える前に、必ずサイトのデータベースのバックアップを作成してください。