Fehler: SMTPRecipientsRefused 553, '5.7.1 # während der Arbeit am Kontaktformular in Django

8

Ich versuche, ein Kontaktformular in Django 1.3, Python 2.6 zu machen.

Was ist der Grund für den folgenden Fehler?

Fehler:

%Vor%

meine settings.py:

%Vor%

edit: Wenn any1 sonst djangobook folgt, ist dies der Teil, der es verursacht:

%Vor%     
mymlyn 14.02.2012, 17:22
quelle

1 Antwort

11

Die Erklärung ist in der Fehlermeldung. Ihr E-Mail-Host weist die E-Mail aufgrund der Absenderadresse [email protected] zurück, die Sie vom Kontaktformular übernommen haben.

Stattdessen sollten Sie Ihre eigene E-Mail-Adresse als Absenderadresse verwenden. Sie können die Option reply_to verwenden, damit die Antworten an Ihren Benutzer gesendet werden.

%Vor%

In Django 1.7 und früheren Versionen gibt es kein reply_to Argument, aber Sie können einen Reply-To header manuell setzen:

%Vor%

Bearbeiten:

In den Kommentaren haben Sie gefragt, wie Sie die Absenderadresse in den Nachrichtentext aufnehmen können. Die message und from_email sind nur Zeichenfolgen, so dass Sie sie beliebig kombinieren können, bevor Sie die E-Mail senden.

Beachten Sie, dass Sie das Argument from_email nicht von Ihren bereinigten_Daten abrufen sollten. Sie wissen, dass das from_address [email protected] sein sollte, verwenden Sie das also, oder importieren Sie DEFAULT_FROM_EMAIL aus Ihren Einstellungen.

Beachten Sie, dass wenn Sie eine Nachricht mit EmailMessage wie in meinem obigen Beispiel erstellen und die Antwort auf den Header festlegen, Ihr E-Mail-Client das Richtige tun sollte, wenn Sie auf die Antwort-Schaltfläche klicken. Im folgenden Beispiel wird send_mail verwendet, um es ähnlich wie den Code zu halten, mit dem Sie verknüpft haben.

%Vor%     
Alasdair 14.02.2012, 17:36
quelle

Tags und Links