Ce guide décrit comment changer l’adresse e-mail d’un membre du personnel depuis la console en utilisant la console Rails. Il s’applique aux situations où un administrateur doit mettre à jour une adresse e-mail sans confirmation de l’ancienne adresse.
Niveau d’utilisateur requis : Administrateur Système
Accès à la console requis
Dans Discourse, pour une sécurité accrue, les membres du personnel doivent confirmer les changements de leur adresse e-mail à la fois depuis la nouvelle et l’ancienne adresse e-mail. Cependant, cela pose un problème lorsqu’un membre du personnel perd l’accès à son ancienne adresse e-mail et souhaite mettre à jour son adresse e-mail. Ce guide fournit les étapes pour changer l’adresse e-mail via la console sans avoir besoin de confirmation de l’ancienne adresse.
Ces commandes peuvent également être utilisées pour forcer un changement d’adresse e-mail d’un utilisateur et outrepasser la nécessité pour lui de confirmer en cliquant sur l’e-mail de validation.
Accéder à la console
Connectez-vous à votre Droplet via SSH, ou utilisez Putty sur Windows :
ssh root@192.168.1.1
Remplacez 192.168.1.1 par l’adresse IP de votre Droplet.
Passez à votre dossier Discourse :
cd /var/discourse
Entrez dans le conteneur :
./launcher enter app
# ou
./launcher ssh app
Accédez à la console Rails :
rails c
Changer l’adresse e-mail
Pour personnaliser ceci pour votre utilisateur, entrez vos informations ici :
ou
Puis exécutez ces commandes (chacune sur une ligne séparée)
u = User.find_by_id(=UserID=)
ou
u = User.find_by_username("=Username=")
u.email = "=EMAIL="
Si un utilisateur a atteint la limite des e-mails rejetés (c’est-à-dire que son score de rebond a dépassé le seuil défini par votre site Discourse), la création d’un nouveau jeton d’e-mail avec
u.email_tokens.create(email: u.email)n’aura aucun effet, et vous devrez d’abord Réinitialiser son Score de Rebond avant de continuer.
u.email_tokens.create(email: u.email, scope: 'change_email')
u.save!
C’est tout, votre adresse e-mail devrait être mise à jour, et vous devriez pouvoir vous connecter avec votre nouvel e-mail.