关于linux环境下django获取中文url报错处理

在Windows上可以正常运行但,在linux下运行django报下面报错:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 10-12: ordinal not in range(128)

导致的原因可能是linux的系统默认语言出先问题,所以我们需要在django运行时重新加载默认的字符编码

一、python2.x

在django项目的manage.py文件的头部添加如下代码:

import sys
reload(sys)
sys.setdefaultencoding('utf8')

二、python3.x

因为在python3中已经不用上述写法,故可以用下列代码代替:

import importlib
importlib.reload(sys)

添加完成重启django便可解决

原文地址:https://www.cnblogs.com/Jack-Kong/p/10470789.html