創建好django項目之后,runserver啟動報錯……
Watching for file changes with StatReloader Performing system checks... System check identified no issues (0 silenced). You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions. Run 'python manage.py migrate' to apply them. April 05, 2019 - 21:59:41 Django version 2.2, using settings 'yaradish.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CTRL-BREAK. Exception in thread Thread-1: Traceback (most recent call last): File "c:\program files (x86)\python37-32\Lib\threading.py", line 917, in _bootstrap_inner self.run() File "c:\program files (x86)\python37-32\Lib\threading.py", line 865, in run self._target(*self._args, **self._kwargs) File "E:\python\demo-yaradish\lib\site-packages\django\utils\autoreload.py", line 54, in wrapper fn(*args, **kwargs) File "E:\python\demo-yaradish\lib\site-packages\django\core\management\commands\runserver.py", line 139, in inner_run ipv6=self.use_ipv6, threading=threading, server_cls=self.server_cls) File "E:\python\demo-yaradish\lib\site-packages\django\core\servers\basehttp.py", line 203, in run httpd = httpd_cls(server_address, WSGIRequestHandler, ipv6=ipv6) File "E:\python\demo-yaradish\lib\site-packages\django\core\servers\basehttp.py", line 67, in __init__ super().__init__(*args, **kwargs) File "c:\program files (x86)\python37-32\Lib\socketserver.py", line 452, in __init__ self.server_bind() File "c:\program files (x86)\python37-32\Lib\wsgiref\simple_server.py", line 50, in server_bind HTTPServer.server_bind(self) File "c:\program files (x86)\python37-32\Lib\http\server.py", line 139, in server_bind self.server_name = socket.getfqdn(host) File "c:\program files (x86)\python37-32\Lib\socket.py", line 676, in getfqdn hostname, aliases, ipaddrs = gethostbyaddr(name) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd1 in position 0: invalid continuation byte
原因及解決方案:
一般來說編碼錯誤是由中文引起的。從 traceback 最后一棧落在 gethostbyaddr 上可以看出:你電腦的主機名多半是設成了中文了。然后查看了自己的主機名,確實為中文
修改計算機主機名為英文
查看主機名
計算機右鍵屬性,點擊高級系統設置,圖中標記即為主機名,修改如箭頭步驟所示。修改后要重啟電腦。


