【发布时间】:2017-08-04 09:23:54
【问题描述】:
我在 django 项目中遇到问题。
UnicodeEncodeError at /contact/1/view 'ascii' codec can't decode byte 0xd0 in position 28: ordinal not in range(128)
在回溯中: single_contact 中的views.py
'vcard_str': unicode(VCard(contact)),
和所有视图
def single_contact(request, pk):
contact = Contact.objects.get(pk = pk)
if contact.group.user != request.user.profile:
raise Http404
if request.method=="GET":
emails = Email.objects.filter(contact = contact)
hash = ''
if emails:
email = emails[0]
hash = get_hash(email.email)
addresses = Address.objects.filter(contact = contact)
if addresses:
address = addresses[0]
phones = PhoneNumber.objects.filter(contact=contact)
return render(request, 'dashboard/addressbook/single_contact.html',
RequestContext(request, {
'contact':contact, 'emails':emails, 'hash':hash,
'addresses':addresses, 'phones':phones,
'vcard_str': unicode(VCard(contact)),
}))
elif request.method=="POST":
contact.delete()
return HttpResponseRedirect(reverse('addressbook_index'))
else:
raise Http404
我做错了什么?我怎样才能解决这个问题 ?
【问题讨论】:
-
能否请您提供 VCard 中
contact值的原始值?