【发布时间】:2010-02-28 23:32:52
【问题描述】:
我在 Django 中为客户编写了一个简单的联系表格。但是,无论何时发送电子邮件,它都会将标头值包装在 u'' 对象中。例如,From: 标头是
From: (u'my@email.com',)
这是发送消息的代码:
形式:
class ContactForm(forms.Form):
name = forms.CharField(max_length=100)
sender = forms.EmailField()
subject = forms.CharField(max_length=255)
message = forms.CharField(widget=forms.widgets.Textarea(attrs={'rows':15, 'cols': 72}))
联系功能:
def contact(request):
RECAPTCHA_PRIVATE_KEY = '******************'
captcha_error = ''
if request.method == 'POST':
form = ContactForm(request.POST)
captcha_response = captcha.submit(request.POST.get("recaptcha_challenge_field", None),
request.POST.get("recaptcha_response_field", None),
RECAPTCHA_PRIVATE_KEY,
request.META.get("REMOTE_ADDR", None))
if not captcha_response.is_valid:
captcha_error = "&error=%s" % captcha_response.error_code
elif form.is_valid():
name = form.cleaned_data['name'],
sender = form.cleaned_data['sender'],
subject = form.cleaned_data['subject'],
message = form.cleaned_data['message']
recipients = ['email@email.com']
try:
send_mail(subject, message, sender, recipients)
except BadHeaderError:
pass
flash_message = 'Thank you for contacting us. We will get back to you shortly.'
return render_to_response('pages/contact.html', {
'form': form,
'captcha_error': captcha_error,
'message': flash_message
})
它完美地发送了电子邮件,我检查了相应的邮箱并出现了电子邮件。但是这些 u'' 对象会阻止电子邮件的主题正确显示并阻止其被回复。
我做错了什么?
提前致谢。
【问题讨论】: