Я создал вид с помощью формы, которая должна отправлять сообщение на электронную почту пользователя, но у меня возникли проблемы с кодировкой. В моем шаблоне есть несколько кириллических писем, и если я пытаюсь отправить почту, я получаю сообщение об ошибке:
'ascii' codec can't encode characters in position 325-329: ordinal not in range(128)
Если я заменю текст в моем шаблоне на английские буквы, все будет работать.
Вид:
def index(request):
seos = SEO.objects.get(id__exact=1)
socs = Social_networks.objects.get(id__exact=1)
globs = globalapp.objects.get(id__exact=1)
index = Index.objects.get(id__exact=1)
form = ContactForm(request.POST)
formmm = ContactusForm(request.POST)
email = globalapp.objects.values_list('emailfb', flat=True).get(id=1)
if form.is_valid():
subject = form.cleaned_data['subject']
sender = form.cleaned_data['sender']
message = form.cleaned_data['message']
fille = form.cleaned_data['fille']
recepients = email
from_email, to = sender, recepients
html_content = loader.render_to_string('globalapp/chunks/email_tpl.html',
{'subject': subject, 'sender':sender, 'message':message, 'fille':fille})
msg = EmailMultiAlternatives(subject, html_content, from_email, [to])
msg.send()
if request.method == 'POST':
subject = request.POST['subject']
email = request.POST['sender']
message = request.POST['message']
form = 'Шапка'
post.objects.create(
subject = subject,
email = email,
message = message,
form = form
)
return HttpResponse('')
return render(request, 'globalapp/index.html', {'seos': seos,
'socs': socs,
'globs': globs,
'index': index,
'form': form,
'formmm': formmm })
Шаблон:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<h2>Новое сообщение с сайта!</h2>
<p>Имя: {{ subject }}</p>
<p>Email: {{ sender }}</p>
<p>Сообщение: {{ message }}</p>
</html>
Я уже пытался использовать .endoce('utf-8')
с шаблоном, но пока не получил никаких результатов.