[PYTHON] Mail mit Django senden

Einführung

Hier erklären wir Ihnen, wie Sie eine E-Mail mit Django senden. Es kann verwendet werden, um ein Anfrageformular zu erstellen.

Standardeinstellungen

Schreiben Sie zuerst die Mail-bezogenen Einstellungen in settings.py. Das Folgende ist ein Beispiel für die Verwendung von Google Mail.

settings.py


EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = '[email protected]'
EMAIL_HOST_PASSWORD =Passwort für die App
EMAIL_PORT = 587
EMAIL_USE_TLS = True

Festlegen des Betreffs und des Ziels der E-Mail

Hier im Anfrageformular Definieren Sie eine Funktion zum Senden von E-Mails in forms.py.

forms.py


from django import forms
from django.conf import settings
from django.core.mail import BadHeaderError, EmailMessage
from django.http import HttpResponse


def send_email(self):
        subject = 'Kontaktiere uns:' + self.cleaned_data['title']
        name = self.cleaned_data['name']
        email = self.cleaned_data['email']
        from_email = '{name} <{email}>'.format(name=name, email=email)
        message = self.cleaned_data['body']
        recipient_list = [settings.EMAIL_HOST_USER]
        email_message = EmailMessage(subject, message, from_email, recipient_list, reply_to=[email])
        try:
            email_message.send()
        except BadHeaderError:
            return HttpResponse('Ein ungültiger Header wurde erkannt.')

Wenn Sie nicht "reply_to" festlegen, wo Sie die "EmailMessage" -Instanz erstellen, kennen Sie die E-Mail-Adresse der Person, die die Anfrage gestellt hat, nicht und können nicht per E-Mail antworten. Geben Sie sie daher unbedingt ein.

Zusammenfassung

Hier habe ich die Einstellungen erklärt, die beim Senden einer E-Mail mit Django erforderlich sind. Es kann auf andere als das Anfrageformular angewendet werden.

Recommended Posts

Mail mit Django senden
Hinweis: Senden Sie eine E-Mail mit Django
Mail per Python senden
Senden Sie japanische Post mit Python3
[Automatisierung] Senden Sie Outlook-E-Mails mit Python
[Python] Mail mit Outlook senden
Senden Sie mit Django ganz einfach E-Mails mit Google Mail
Senden Sie E-Mails über Google Mail mit Python 3.4.3.
Internationalisierung mit Django
[Python] Mail senden
[Python] Mail senden
CRUD mit Django
HTML-Mail mit Bild zum Senden mit Python
Senden Sie eine E-Mail mit Amazon SES + Python
Authentifizieren Sie Google mit Django
Django 1.11 wurde mit Python3.6 gestartet
Laden Sie Dateien mit Django hoch
Entwicklungsverdauung mit Django
PDF mit Django ausgeben
Markdown-Ausgabe mit Django
Verwenden Sie Gentelella mit Django
Senden Sie eine E-Mail mit Python an Spushis Adresse
Twitter OAuth mit Django
Erste Schritte mit Django 1
Datei-Upload mit Django
Verwenden Sie WENIGER mit Django
Ich habe versucht, mit django eine E-Mail zum Abschluss der Registrierung von Google Mail zu senden.
Überprüfen Sie die E-Mail mit Python
Pooling mechanisieren mit Django
Verwenden Sie MySQL mit Django
Senden Sie eine E-Mail mit Excel in Python
Django ab heute
Erste Schritte mit Django 2
Senden Sie eine E-Mail mit einem anderen Benutzer als EMAIL_HOST_USER, der in den Einstellungen in Django geschrieben wurde
Mach Django mit CodeStar (Python3.6.8, Django2.2.9)
Fangen Sie mit Django an! ~ Tutorial ⑤ ~
Minimale Konfigurations-Website-Umgebung mit Django
Erstellen Sie eine API mit Django
Mach Django mit CodeStar (Python3.8, Django2.1.15)
Stellen Sie Django serverlos mit Lambda bereit
Python3 + Django ~ Mac ~ mit Apache
Erste Schritte mit Python Django (1)
Erstellen Sie eine Homepage mit Django
Fangen Sie mit Django an! ~ Tutorial ④ ~
Erste Schritte mit Python Django (4)
Erstellen Sie eine Webanwendung mit Django
Erste Schritte mit Python Django (3)
Kombinieren Sie Fast API mit Django ORM
Mail senden mit Python (Outlook)
Fangen Sie mit Django an! ~ Tutorial ⑥ ~
Verwenden Sie Django, um Tweet-Daten zu speichern
Führen Sie eine AES-Verschlüsselung mit DJango durch
Einführung in Python Django (6)
Senden Sie E-Mails mit Pythons smtplib
Kombiniere zwei Bilder mit Django
Erste Schritte mit Django mit PyCharm
Echtzeit-Web mit Django-Kanälen
Doppelte Submit-Unterdrückung mit Django
Django REST Framework mit Vue.js
Verwenden Sie prefetch_related bequem mit Django
Erste Schritte mit Python Django (5)