У меня проблемы с получением поля to_email
для получателя.
Использование Django 2.1 и отправка автоматического электронного письма после входа пользователя на определенную страницу.
Сейчас электронное письмо отправляется на reciever@gmail.com
, что явно неверно.
Необходимо отправить на любой адрес электронной почты, который был введен в форму.
Я пытался перейти на to_email= request.POST['email']
и to_email = form.cleaned_data['email']
, но они не работают.
to_email = form.cleaned_data['email']
выдает ошибку
TypeError at /users/list "to" argument must be a list or tuple
Затем изменив его на
to_email = form.cleaned_data['email',]
выдает ошибку
KeyError at /users/list ('email',)
Может кто-нибудь мне помочь?
views.py
def list_view(request):
if request.method == 'POST':
form = ListForm(request.POST)
if form.is_valid():
form.save()
messages.success(request, f"signed up!")
subject = "Yay."
html_message = render_to_string('mail/mail_template.html', {'context': 'values'})
plain_message = strip_tags(html_message)
from_email = settings.EMAIL_HOST_USER
to_email = ['receiver@gmail.com',]
html_message.content_subtype = "html"
send_mail( subject, plain_message, from_email, to_email, html_message=html_message )
return redirect('landing')
forms.py
class ListForm(forms.ModelForm):
email = forms.EmailField(required=True)
class Meta:
model = List
fields = ['email']