Frage

Ich bin gespannt, ob es eine Möglichkeit aktivierte E-Mail mit Benutzername, Passwort zu senden django-Anmeldung unter Verwendung. Zuerst dachte ich, über Anmeldeformular zu modifizieren, aber ich brauche einige Beispiele.

War es hilfreich?

Lösung

django-Registrierung den folgenden Code verwendet, intern, E-Mails zu behandeln:

send_mail(subject, message, settings.DEFAULT_FROM_EMAIL, [self.user.email])

Wenn Sie arbeiten möchten, werden Sie den Wert DEFAULT_FROM_EMAIL in Ihrem settings.py angeben.

Auch ist folgendes zu beachten:

Mail wird mit der SMTP-Host gesendet und Port in der EMAIL_HOST spezifiziert und EMAIL_PORT Einstellungen. Das EMAIL_HOST_USER und EMAIL_HOST_PASSWORD Einstellungen, wenn gesetzt, werden zum Authentifizieren an den SMTP verwendet Server und die EMAIL_USE_TLS Einstellung steuert, ob eine sichere Verbindung verwendet wird.

Also, ein Beispiel zu geben, hier ist was ich in einer settings.py Datei verwendet hat ein Google Mail-Konto zu verwenden:

EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 465
EMAIL_USE_TLS = True

EMAIL_HOST_USER = 'my@gmail.com'
EMAIL_HOST_PASSWORD = 'my_emails_password'

django-Registrierung sollte dann in der Lage sein, E-Mails zu senden.

Andere Tipps

EMAIL_PORT = 465 arbeitet vor einigem Jahr. Nun müssen Sie Port 587 mit gmail verwenden. Grund: Django nicht unterstützt SMTP mit SSL von Anfang an. Es wird nur STARTTLS-Befehl unterstützt NACH Klartext-Verbindung aufgebaut wird. Gmail jedoch nicht mehr unterstützt diese Option auf Port 465.

Hope Dies wird helfen, jemand. Nach Fehlerbehebung für eine halbe Stunde, wurde mir klar, dass ich auch dies ausdrücklich musste feststellen, während django-Anmeldung mit -

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

django-register aktivieren eine ähnliche Funktionalität wie django-Registrierung implementiert. Grundsätzlich bietet es Code für Benutzer anmelden, E-Mail-Überprüfung und Aktivierung, Benutzeranmeldung und die Abmeldung eines Benutzers.

Wenn Sie Beispiele benötigen Sie Ihren eigenen Code zu implementieren, können Sie überprüfen die views.py und forms.py in register_activate einige Hinweise zu bekommen.

Hope die Antwort hilft. Lassen Sie uns wissen, wenn Sie weitere Fragen haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top