Additional email address per user account support

Ich habe Folgendes getan:

./launcher enter app
rails c
UserEmail.where(user_id: 7, primary: false).destroy_all
UserEmail.create!(user: User.find_by_username("user7"), email: "newemail@example.com")
exit
exit
./launcher restart app

Ich weiß nicht, ob das der Fehler war, aber ich habe diesmal nur die Zeile zum Löschen ausgeführt. Ich habe die App neu gestartet und die Website aktualisiert. Die sekundäre E-Mail-Adresse war weg! Also habe ich den Rest über die Web-Oberfläche erledigt und die primäre Adresse in eine sekundäre umgewandelt, da sie nicht mehr blockiert ist.

Ich nehme das zurück: Das Ändern der E-Mail-Adresse über das Web sendet eine Bestätigung an die gültige E-Mail-Adresse, behält aber die ungültige Adresse bei, sobald man zurück zur Benutzerpräferenzseite oder zur Benutzer-Admin-Seite gelangt.
Jetzt bin ich mir nicht mehr sicher, was zu tun ist :frowning:

EDIT:

Auf die Gefahr hin, diesen Thread zu spammen, habe ich es herausgefunden.

Sobald man in rails c ist:
Ich habe alle E-Mail-Adressen entfernt – ich wusste einfach nicht, wie man eine E-Mail als Primär festlegt. Deshalb wurde jedes Mal, wenn ich die gültige E-Mail erneut hinzufügte, sie nur als sekundäre Adresse hinzugefügt.

# Alle sekundären E-Mail-Adressen entfernen
UserEmail.where(user_id: 1234, primary: false).destroy_all
# Primäre E-Mail-Adresse entfernen
UserEmail.where(user_id: 1234, primary: true).destroy_all

# Primäre E-Mail-Adresse festlegen
UserEmail.create!(user_id: 1234, email: "validemail@example.com", primary: true)

Das versteht sich von selbst, es wird die Validierung übersprungen, aber da Sie die E-Mail-Adresse beim Zusammenführen des Kontos bereits manuell validiert haben, können andere Personen hoffentlich dieses Beispiel nutzen. Als Nächstes müssen Sie nur noch nach dem Neustart der App eine E-Mail zur Zurücksetzung des Passworts senden.

5 „Gefällt mir“