Este guia descreve como alterar o endereço de e-mail de um membro da equipe a partir do console usando o console Rails. Aplica-se a situações em que um administrador precisa atualizar um e-mail sem confirmação do endereço antigo.
:
Nível de usuário necessário: Administrador do Sistema
:
Acesso ao console necessário
No Discourse, para maior segurança, os membros da equipe devem confirmar as alterações em seus endereços de e-mail tanto nos endereços de e-mail novos quanto nos antigos. No entanto, isso cria um problema quando um membro da equipe perde o acesso ao seu endereço de e-mail antigo e deseja atualizar seu endereço de e-mail. Este guia fornece as etapas para alterar o endereço de e-mail através do console sem a necessidade de confirmação do e-mail antigo.
Esses comandos também podem ser usados para forçar uma alteração no endereço de e-mail de um usuário e anular a necessidade de confirmação clicando no e-mail de validação
Acessando o console
Conecte-se ao seu Droplet via SSH, ou use o Putty no Windows:
ssh root@192.168.1.1
Substitua 192.168.1.1 pelo endereço IP do seu Droplet.
Mude para a pasta do seu Discourse:
cd /var/discourse
Entre no contêiner:
./launcher enter app
# ou
./launcher ssh app
Acesse o Rails Console:
rails c
Alterando o endereço de e-mail
Para personalizar estas informações para o seu usuário, insira suas informações aqui:
ou
Em seguida, execute estes comandos (cada um em uma linha separada)
u = User.find_by_id(=UserID=)
ou
u = User.find_by_username("=Username=")
u.email = "=EMAIL="
Se um usuário atingiu o limite de e-mails devolvidos (ou seja, sua pontuação de devolução excedeu o limite definido pelo seu site Discourse), criar um novo token de e-mail com
u.email_tokens.create(email: u.email)não terá efeito, e você precisará primeiro Redefinir a Pontuação de Devolução antes de prosseguir.
u.email_tokens.create!(email: u.email, scope: EmailToken.scopes[:email_update])
u.save!
É isso, seu endereço de e-mail deve ser atualizado, e você deve conseguir fazer login com seu novo e-mail.