Django: отправитель электронной почты совпадает с отправителем получателя, как я могу решить эту проблему?
Я разработал форму контакта, где пользователь может связаться с нами, он вводит свой email, тему и сообщение, но я застрял на после нескольких попыток мне не удалось достичь своей цели, все хорошо, письмо отправляется получателю, который я указал в settings.py
EMAIL_HOST_USER
Но отправитель электронной почты зарегистрирован как получатель электронной почты, я не знаю почему, вот код:
def contact_view(request):
if request.method == 'GET':
form = ContactForm()
else:
form = ContactForm(request.POST)
if form.is_valid():
subject = form.cleaned_data['subject']
from_email = form.cleaned_data['email']
message = form.cleaned_data['message']
try:
send_mail(subject, message, from_email, [settings.EMAIL_HOST_USER])
except BadHeaderError:
return HttpResponse('Invalid header found.')
return render(request, 'pages/success.html')
return render(request, 'pages/contact.html', {'form': form})
Как я могу решить, что я не хочу, чтобы email отправителя был email получателя, я хочу, чтобы это был email, который пользователь ввел во время заполнения формы.
Функция send_email принимает аргументы: subject, message, from_email, [to]. В основном вы отправляете почту с и на ваш EMAIL_HOST_USER, так как практически from_email не имеет большого значения (может измениться имя, но точно не сам адрес электронной почты). Бэкэнд берется из EMAIL_HOST_USER и его пароля, порта и т.д.
Подумайте об этом следующим образом:
Неужели так просто отправить электронную почту как любой адрес?