Ce guide explique comment fusionner plusieurs comptes utilisateurs en un seul compte Discourse. Il couvre la fusion des utilisateurs non membres du personnel via l’interface utilisateur de Discourse et la fusion des membres du personnel via la console.
Niveau utilisateur requis : Administrateur
La fusion de comptes utilisateurs dans Discourse vous permet de combiner plusieurs comptes en un seul. Ce processus peut être utile dans plusieurs scénarios :
- Lorsqu’un utilisateur crée plusieurs comptes, peut-être en raison de l’oubli de son inscription précédente.
- Si un utilisateur crée un nouveau compte avec une nouvelle adresse e-mail au lieu de mettre à jour son compte existant.
- Lorsqu’un utilisateur souhaite regrouper plusieurs comptes utilisés à des fins différentes (par exemple, personnel, professionnel ou de test) en un seul compte.
Fusion des utilisateurs non membres du personnel
Les administrateurs peuvent fusionner des utilisateurs non membres du personnel directement via l’interface utilisateur de Discourse.
Cette action est irréversible. Le compte utilisateur source sera supprimé après la fusion.
Pour fusionner deux utilisateurs non membres du personnel :
- Accédez à la page d’administration des utilisateurs de l’utilisateur source (le compte à partir duquel vous souhaitez fusionner).
- Faites défiler la page jusqu’en bas.
- Cliquez sur le bouton « Fusionner ».
- Dans la première fenêtre contextuelle, entrez le nom d’utilisateur du compte cible (le compte dans lequel vous souhaitez fusionner) et cliquez sur « Transférer et supprimer ».
- Une boîte de dialogue de confirmation apparaîtra. Tapez le texte de confirmation affiché (par exemple,
transfer @source to @target) et cliquez sur « Transférer et supprimer » pour lancer la fusion.
La fusion de grands comptes peut être gourmande en ressources et peut prendre du temps à traiter, en fonction de la quantité de données associée à l’utilisateur source.
Qu’est-ce qui est fusionné ?
Lors de la fusion de comptes utilisateurs, Discourse combine les données de plus de 50 tables, notamment :
- Messages et sujets
- J’aime donnés et reçus
- Messages privés
- Informations du profil utilisateur
- Préférences et paramètres utilisateur
- Actions et activités utilisateur (par exemple, signets, vues de sujets)
- Badges et réalisations
- Niveau de confiance et adhésions aux groupes
- Comptes associés (par exemple, connexions sociales)
En cas de conflit, les détails de l’utilisateur cible sont conservés. Si les deux utilisateurs avaient un utilisateur anonyme associé à leur compte, celui appartenant à l’utilisateur source sera perdu.
Les liens entrants faisant référence à l’utilisateur source (par exemple,
https://discourse.example.com/t/some-topic/17/3?u=source_username) ne seront pas associés à l’utilisateur cible après la fusion.
Note importante sur la fusion des utilisateurs et DiscourseConnect
La fusion de comptes utilisateurs peut potentiellement avoir un impact sur DiscourseConnect (anciennement SSO), selon l’implémentation :
- Si DiscourseConnect est basé sur l’adresse e-mail, il ne devrait pas y avoir de problèmes tant que l’e-mail du compte cible est utilisé dans le système DiscourseConnect. Notez que l’e-mail de l’utilisateur source deviendra un e-mail secondaire sur le compte cible après la fusion, ce qui peut causer des problèmes de connexion si cet e-mail est utilisé plus tard avec DiscourseConnect. Envisagez de supprimer les e-mails secondaires après la fusion si nécessaire.
- Si le système DiscourseConnect utilise un identifiant utilisateur unique différent de l’identifiant utilisateur Discourse, la fusion pourrait causer des problèmes si l’identifiant unique du compte source n’est pas correctement mappé au compte cible.
Fusion des membres du personnel
Pour des raisons de sécurité, la fusion des membres du personnel doit être effectuée via la console.
Si votre site est hébergé par Discourse, contactez team@discourse.org pour obtenir de l’aide concernant la fusion des membres du personnel.
Pour fusionner des membres du personnel via la console :
root@host:/var/discourse# ./launcher enter app
root@host-app:/var/www/discourse# rake users:merge['source_username','target_username']
Users merged!
root@host-app:/var/www/discourse#
Assurez-vous qu’il n’y a pas d’espaces avant ou après la virgule dans la commande.
Foire aux questions
Q : Que se passe-t-il si le processus de fusion semble bloqué ?
R : Si l’écran de progression de la fusion ne montre aucun changement pendant une longue période, essayez d’actualiser la page. La fusion peut être terminée, mais l’interface utilisateur ne s’est pas mise à jour.
Q : Puis-je annuler une fusion d’utilisateurs ?
R : Non, une fois que deux utilisateurs sont fusionnés, l’action ne peut pas être annulée. Le compte utilisateur source est définitivement supprimé après la fusion.
Q : La fusion des utilisateurs affectera-t-elle leurs messages et sujets ?
R : Tous les messages et sujets de l’utilisateur source seront transférés à l’utilisateur cible. La paternité de ces éléments sera modifiée pour refléter l’utilisateur cible comme créateur.

