Wenn ein bestehender gestufter Benutzer meiner Website beitritt, werden die Daten der benutzerdefinierten Felder des Benutzers nicht gespeichert

Ich habe einige potenzielle Benutzer, die Schwierigkeiten bei der Anmeldung haben. Sie kontaktieren die Moderatoren per E-Mail zur Unterstützung und erstellen so ein temporäres Benutzerkonto.

Normalerweise ist das Problem leicht zu lösen, und sie melden sich an und füllen alle Felder aus. Bemerkenswert ist, dass wir mehrere obligatorische benutzerdefinierte Felder (UCFs) haben.

Ich habe festgestellt, dass die UCF-Daten für diese temporären Benutzer nie in der Datenbank gespeichert werden. Sie müssen dann kontaktiert und manuell verwaltet werden.

Ich kann dies umgehen, indem ich stattdessen einen benutzerdefinierten Assistenten verwende, um die Daten zu sammeln, aber das zugrunde liegende Problem / der Fehler sollte wahrscheinlich behoben werden.

5 „Gefällt mir“

Ich kann diesen Fehler reproduzieren und denke, wir sollten ihn beheben.

  1. Erstellen Sie eine Gruppe, die E-Mails von jeder E-Mail-Adresse akzeptiert.
  2. Erstellen Sie einige benutzerdefinierte Benutzerfelder.
  3. Senden Sie eine E-Mail an die in (1) eingerichtete Gruppe von einer E-Mail-Adresse, die noch keinem Konto auf der Website zugeordnet ist. Dadurch wird ein gestufter Benutzer mit dieser E-Mail-Adresse erstellt.
  4. Erstellen Sie ein Konto mit derselben E-Mail-Adresse wie der gestufte Benutzer.
  5. Füllen Sie bei Aufforderung die Benutzerfelder aus.
  6. Gehen Sie zum Benutzerprofil und sehen Sie, dass die Benutzerfelder nicht ausgefüllt sind.

Wenn Sie ein Konto mit einer E-Mail-Adresse erstellen, die noch keinem gestuften Benutzerkonto zugeordnet ist, werden die benutzerdefinierten Benutzerfelder wie erwartet ausgefüllt.

5 „Gefällt mir“

Ich versuche, dieses Problem zu debuggen, aber nach einer Weile kann ich es immer noch nicht reproduzieren.

Ich habe es bei einer sauberen Installation getestet. Die einzigen geänderten Einstellungen sind:

  • POP3-Abruf aktiviert
  • POP3-Abruf-Host
  • POP3-Abruf-Benutzername
  • POP3-Abruf-Passwort
  • E-Mail-Eingang.

Ich habe Folgendes getan:

  1. Ich habe eine neue Gruppe erstellt und nur den Namen und die „Benutzerdefinierte eingehende E-Mail-Adresse“ festgelegt. Die Gruppe lässt E-Mails von jeder E-Mail-Adresse zu.

  2. Ich habe mehrere benutzerdefinierte Benutzerfelder erstellt. Ich habe die Typen „Textfeld“, „Bestätigung“ und „Dropdown“ ausprobiert. Ich habe sowohl erforderliche als auch optionale Felder sowie sowohl bearbeitbare als auch nicht bearbeitbare Felder getestet.

  3. Ich habe eine E-Mail von einer neuen E-Mail-Adresse an die Gruppenadresse gesendet. Dies erstellt den gestuften Benutzer wie erwartet.

  4. Ich habe ein neues Konto mit derselben E-Mail-Adresse erstellt, die ich zuvor zum Senden der E-Mail verwendet habe, und die obligatorischen benutzerdefinierten Felder ausgefüllt.

  5. Der gestufte Benutzer wird in einen normalen Benutzer umgewandelt, und die benutzerdefinierten Felder werden gespeichert und unter u/user/preferences/profile angezeigt.

Können Sie dies immer noch reproduzieren? Wenn ja, haben Sie eine Idee, was in meiner Einrichtung anders sein könnte, um ein anderes Ergebnis zu erzielen?

4 „Gefällt mir“

Der einzige offensichtliche Unterschied ist, dass unsere Instanz eingehende E-Mails direkt verarbeitet und ein benutzerdefiniertes Wizard beim ersten Login ausgelöst wird.

Ich werde unsere Instanz sowie eine einfachere Website (ebenfalls mit direkter E-Mail-Verarbeitung) erneut testen und berichten. Das kann aber leider ein paar Tage dauern.

3 „Gefällt mir“

Ich kann das Problem mit den oben genannten Schritten immer noch reproduzieren. Meine Website verwendet auch eingehende E-Mails. Es ist auch eine reine Einladungs-Website, daher habe ich einen Einladungslink gesendet, um das Konto zu erstellen. Um zu bestätigen, dass der Einladungslink nicht das Problem ist, habe ich die Registrierung vorübergehend aktiviert, um das Konto zu erstellen. Gleiches Problem – keine benutzerdefinierten Benutzerfelder.

Können Sie die Reproduktionsschritte noch einmal durchgehen und besonders darauf achten, den Inkognito-Modus oder ein anderes Chrome-Profil zu verwenden, wenn Sie die E-Mail senden und das Benutzerkonto erstellen?

3 „Gefällt mir“

Es könnte gut sein, dass es sich um eine unerwartete Interaktion mit direkt eingehender E-Mail handelt. Ich kann mich nicht erinnern, das jemals bemerkt zu haben, bevor die direkt eingehende E-Mail implementiert wurde, das ist sicher.

Wenn Sie es immer noch nicht reproduzieren können, richten Sie es bitte ein und versuchen Sie es erneut:

1 „Gefällt mir“

Ich kann dies auch auf unserem eigenen Hosting reproduzieren, auf einem Business-Plan-Test. @jancernik, suchen Sie nach einer Einladung in Ihrer E-Mail, damit Sie sie dort auch reproduzieren können.

Auf unserem Hosting müssen Sie auch die Admin-Einstellung E-Mail-Eingang aktivieren, damit die Gruppeneinstellung Benutzerdefinierte E-Mail-Eingangsadresse angezeigt wird. Das hat mich verwirrt.

Screenshot 2023-05-10 at 7.08.05 AM

Auch der Text für diese Einstellung ist auf unserem Hosting verwirrend, da keine zusätzliche manuelle Einrichtung oder POP3-Abfrage erforderlich ist – sie funktioniert sofort. Ich werde ihn aktualisieren.

Bearbeitung: Ich habe den Text in diesem PR zur Vereinfachung aktualisiert:

Ermöglicht Benutzern das Posten neuer Themen per E-Mail. Nach Aktivierung dieser Einstellung können Sie E-Mail-Eingänge für Gruppen und Kategorien konfigurieren.

2 „Gefällt mir“

Zur Klärung: Wenn E-Mail-Eingang deaktiviert ist, können Sie das Problem in der OP dann immer noch reproduzieren?

Sie können meine Repro-Schritte im 2. Beitrag oben nicht befolgen, ohne E-Mail-Eingang zu aktivieren, da dies die Erstellung eines gestuften Benutzers durch das Senden einer E-Mail an das Forum zur Erstellung einer neuen Gruppennachricht beinhaltet.

Sie können das Problem aber auch ohne aktivierten E-Mail-Eingang reproduzieren, indem Sie eine PM an eine E-Mail-Adresse senden, um den gestuften Benutzer zu erstellen, und sich dann mit dieser E-Mail-Adresse anmelden. Ich habe es gerade getestet.

2 „Gefällt mir“

Gibt es hier Fortschritte?

Ich frage, weil ich etwa 100 Personen als gestaffelte Benutzer hinzufügen werde. Sie waren über eine E-Mail-Liste für einen bestehenden externen Newsletter angemeldet, aber wir beabsichtigen, dass dieser stattdessen von unserer Website geliefert wird.

Wir hoffen, dass sich viele von ihnen ebenfalls anmelden werden, aber das wird ziemlich chaotisch, wenn ihre UCFs nicht durchkommen!

1 „Gefällt mir“

Es steht auf unserer Liste, aber wir werden wahrscheinlich noch ein paar Wochen brauchen, um es zu lösen.

3 „Gefällt mir“

Wir haben hier dank @daniel eine Lösung, über FIX: Staged user creation loses user custom field data by pmusaraj · Pull Request #22206 · discourse/discourse · GitHub

Können Sie das bitte testen, @tobiaseigen @nathank?

5 „Gefällt mir“

Ich habe es mit meinen Reproduktionsschritten oben getestet und kann bestätigen, dass dies behoben ist! Gute Arbeit! Das war eine knifflige Sache.

Ich hatte einen kleinen Schreck, weil die Felder beim ersten Betrachten des Profils als Administrator nicht angezeigt wurden. Aber nach einem Browser-Refresh erschienen sie. :sweat_smile:

6 „Gefällt mir“