Sim, isso pode ser feito no console do Rails. Para acessar o console do Rails, execute ./launcher enter app e, em seguida, digite rails c no prompt para iniciar o console.
Tenha cuidado ao percorrer todos os usuários até ter certeza do que vai acontecer. Aqui está como testei para um usuário individual no meu site:
Primeiro, obtenha uma lista dos locais usados pelo Discourse:
I18n.available_locales
Isso imprimirá uma longa lista de símbolos que o Discourse usa para locais. Por exemplo: :be, :bg, :bs_BA, :ca...
Você pode usar esses símbolos para definir o local. Por exemplo, para atualizar o local de um usuário para francês:
u = User.find(1)
u.update(locale: :fr)
Se você quiser percorrer os usuários, precisará descobrir como obter arrays de usuários para cada local para que possa iterar sobre eles. Se você tiver listas de nomes de usuários para cada local, isso pode ser usado para encontrar os usuários. A maneira simples de fazer isso no console é converter uma lista de nomes de usuários em um array. Por exemplo:
fr_users = ['bob', 'sally', 'john']
fr_users.each do |username|
u = User.find_by(username: username)
u.update(locale: :fr)
end
Se você tentar isso, proceda com cuidado. Certifique-se de criar um backup do banco de dados do seu site antes de fazer as alterações.