Tenho um problema estranho com o nome de usuário, meu quadro está usando RTL e um idioma exclusivo para palavras-chave em árabe.
O nome de usuário está definido como palavras em inglês, mas quando verifico os logs, ele me mostra que o modelo de perfil do usuário não pode ser encontrado… Porque está em palavras-chave em árabe.
Quando verifico o nome de usuário para alterá-lo, ele está definido em inglês, mas no erro, ele me mostra a palavra-chave em árabe.
Por que você acredita nisso? Eu não acho que o método create_user_profile seja para ser executado manualmente, ele é executado pelo Discourse após um usuário ser criado discourse/app/models/user.rb at main · discourse/discourse · GitHub
É por isso que você recebe o erro duplicate key value, porque você está tentando criar perfis de usuário que já existem.
Tentei replicar este erro criando uma conta de usuário com o nome de usuário دعم_المجتمع e também testei com uma conta com um nome de usuário em inglês, ambos com o idioma da interface definido como árabe, e funcionou bem.
Eu não acho que este problema esteja relacionado ao idioma ou a templates, mas sim às imagens em falta dos distintivos, como você apontou aqui Badge image missing issue
Você está correto; de qualquer forma, este é um backup e eu o restaurei e está funcionando bem.. o problema é apenas com as imagens de distintivos; e eu tentei executar os comandos
rake uploads:clean_up
rake posts:rebake
mas o problema ainda é o mesmo..
[2] pry(main)> Discourse.system_user.create_user_profile
ActiveRecord::RecordNotUnique: PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "user_profiles_pkey"
DETAIL: Key (user_id)=(-1) already exists.
from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.3/lib/patches/db/pg.rb:69:in `exec_params'
Caused by PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "user_profiles_pkey"
DETAIL: Key (user_id)=(-1) already exists.
from /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.3/lib/patches/db/pg.rb:69:in `exec_params'
[3] pry(main)>