In der Dokumentation von Django EmailMultiAlternatives gibt es nichts darüber, wie man Header wie "Format" oder " Antwort an "in EmailMultiAlternatives
. Es hat eine Weile gedauert, bis ich es herausgefunden habe und ich sende diesen Beitrag, um anderen zu helfen, ihre Zeit zu sparen.
Wie Sie im Quellcode von django sehen können, erbt EmailMultiAlternatives
von EmailMessage
, also nehmen sie die gleichen Parameter im init-Konstruktor an. Auf diese Weise können wir Header hinzufügen wie:
Zurück im Jahr 2015 beschwerte sich OP, dass es keine Anweisungen in der Dokumentation gab, wie man Header wie "Format" und "Reply-To" in Django mail (django.core.mail) hinzufügt. Heute jedoch, während Sie den gleichen Dokumentationslink verwenden. Wir können Beschreibung und Beispiele in 2018 leicht finden:
Klasse
EmailMessage
[ Quelle ]Die EmailMessage Klasse wird mit den folgenden Parametern initialisiert ( in der angegebenen Reihenfolge, wenn Positionsargumente verwendet werden ). Alle Parameter sind optional und können jederzeit vor dem Aufruf von
send()
gesetzt werden Methode.
- Betreff : Die Betreffzeile der E-Mail.
- body : Der Nachrichtentext. Dies sollte eine Klartextnachricht sein.
- from_email : Die Adresse des Absenders. Die beiden Formulare
[email protected]
undFred <[email protected]>
sind zulässig. Wenn nicht angegeben, dieDEFAULT_FROM_EMAIL
Einstellung wird verwendet.- zu : Eine Liste oder ein Tupel von Empfängeradressen.
- bcc : Eine Liste oder ein Tupel von Adressen, die beim Senden der E-Mail im Header "Bcc" verwendet werden.
- Verbindung : Eine E-Mail-Backend-Instanz. Verwenden Sie diesen Parameter, wenn Sie dieselbe Verbindung für mehrere Nachrichten verwenden möchten. Wenn nicht angegeben, a Neue Verbindung wird erstellt, wenn
send()
aufgerufen wird.- Anhänge : Eine Liste von Anhängen zum Einfügen der Nachricht. Dies können entweder
email.MIMEBase.MIMEBase
Instanzen sein, oder(filename, content, mimetype)
Tripel.- headers : Ein Wörterbuch mit zusätzlichen Headern zum Einfügen der Nachricht. Die Schlüssel sind der Kopfzeilenname, Werte sind die Kopfzeilenwerte. Es liegt an der Aufrufer, um sicherzustellen, dass Header-Namen und Werte im richtigen Format vorliegen eine E-Mail-Nachricht. Das entsprechende Attribut ist
extra_headers
.- cc : Eine Liste oder ein Tupel von Empfängeradressen, die beim Senden der E-Mail im Header "Cc" verwendet werden.
Zum Beispiel:
%Vor%
Wie aus Beispielen hervorgeht, hat EmailMessage
auch headers
argument ( dictionary ), EmailMultiAlternatives
entsprechend dem Docstring in Quellencode ist:
Wenn Sie also nichts Bestimmtes benötigen, ist EmailMessage
in Ordnung, weil EmailMultiAlternatives
derzeit für die einfache Einbindung von Text- und HTML-Versionen von Text steht.