我无法弄清楚我的代码提出的原因:
UnicodeEncodeError: 'ascii' codec can't encode character u'\u0161' in position 17: ordinal not in range(128)
一切都可能是unicode,string.decode or encode utf-8
也不起作用。
def create_active_orders_xlsx():
orders = drevo_models.Order.objects.filter(confirmed=True,done=False)
f = open('example2.csv','w')
for order in orders:
f.write(order.get_csv_line()) #.encode('utf-8') tried but the same error
f.close()
class Order(models.Model):
....
....
def get_csv_line(self):
return u'"'+u'";"'.join([u'{}'.format(x) for x in [self.id,self.first_name,self.last_name,self.psc,
self.city,self.street,self.number,
self.wet_wood,self.dry_wood,self.stelinka,self.briquette,
self.price]]) + u'"'
你知道问题出在哪里吗?