安装好django suit后,运行服务器:
python manage.py runserver

在表单页面输入中文,保存时,出现如下错误:
UnicodeEncodeError at /admin/ModelApp/server/1/change/
'ascii' codec can't encode characters in position 0-4: ordinal not in range(128)
Request Method: POST
Request URL: http://127.0.0.1:8000/admin/ModelApp/server/1/change/
Django Version: 1.11.5
Exception Type: UnicodeEncodeError
Exception Value:
'ascii' codec can't encode characters in position 0-4: ordinal not in range(128)
Exception Location: D:\Python\27\lib\site-packages\django-1.11.5-py2.7.egg\django\utils\encoding.py in force_text, line 80
Python Executable: D:\Python\27\python.exe
Python Version: 2.7.13
Python Path:
...


解决方法:
在manage.py头部加入如下代码:
import sys
reload(sys)
sys.setdefaultencoding('utf8')


如:

# -*- coding: utf-8 -*-

#!/usr/bin/env python

import os

import sys

reload(sys)

sys.setdefaultencoding('utf8')



if __name__ == "__main__":

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "GM_yaowentan.settings")

try:

from django.core.management import execute_from_command_line

except ImportError:

# The above import may fail for some other reason. Ensure that the

# issue is really that Django is missing to avoid masking other

# exceptions on Python 2.

try:

import django

except ImportError:

raise ImportError(

"Couldn't import Django. Are you sure it's installed and "

"available on your PYTHONPATH environment variable? Did you "

"forget to activate a virtual environment?"

)

raise
execute_from_command_line(sys.argv)