如果我用一个中文单词主语:
subject = u'邮件标题'
这将是显示错误:
UnicodeDecodeError at /account/login_view/
'utf8' codec can't decode bytes in position 0-1: invalid data
我能做些什么
谢谢
更新
def register_view(request):
if request.method == 'POST':
form = SignupForm(request.POST)
if form.is_valid():
# Process the data in form.cleaned_data
# ...
username = form.cleaned_data['username']
password = form.cleaned_data['password']
email = form.cleaned_data['email']
user = User.objects.create_user(username, email, password)
send_html_mail(subject, html_content, [email])
if user is not None:
user.save()
#return HttpResponse(simplejson.dumps({'msg':'ok'}))
return HttpResponseRedirect("/")
else:
return HttpResponseRedirect("/account/register_view")
else:
form = SignupForm() # An unbound form
return render_to_response('accounts/register_view.html',{'form': form,})
def login_view(request):
if request.method == 'POST':
form = LoginForm(request.POST)
if form.is_valid():
username = form.cleaned_data['username']
password = form.cleaned_data['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
return HttpResponseRedirect("/")
else:
return HttpResponse('user is not active')
else:
#return HttpResponseRedirect("/account/login_submit")
return HttpResponse('No this username . and <a href="/">return to homepage</a>')
else:
form = LoginForm() # An unbound form
return render_to_response('accounts/login_view.html',{'form': form,})
发布于 2010-12-14 22:37:08
发布于 2010-12-14 22:23:47
你是怎么把这件事。你应该在发送前把它编码到utf-8。
subject.encode('utf-8')
或
import codecs
subject = codecs.utf_8_encode(subject)
然后寄到你的视野里。
https://stackoverflow.com/questions/4447195
复制