首先,我嘗試了所有可以在SO和Google上找到的方法,但都沒有成功,所以在這裏問。Django UnicodeDecode錯誤
我在學習django
並正在做一個測試項目。一切都很順利,但創建superuser
後,當我試圖登錄到管理面板,它顯示UnicodeDecodeError
。我嘗試了幾種方法,但不斷收到錯誤。我在使用python 3的windows 7 32位上使用django 1.11
。
我創建了一個應用程序students
並註冊了該應用程序。然後跑到migrate
。
學生/ models.py
from django.db import models
class Students(models.Model):
roll = models.IntegerField(primary_key=True)
name = models.CharField(max_length=200)
dept = models.CharField(max_length=200)
inst = models.CharField(max_length=200)
def __str__(self):
return self.name + "("+ self.dept + ")"
學生/ views.py
from django.shortcuts import render
from django.views.generic.base import View
from students.models import Students
class StudentListView(View):
def get(self,request):
students = Students.objects.all()
return render(request,'students/index.html',{'students':students})
urls.py
from django.conf.urls import url
from django.contrib import admin
from students.views import StudentListView
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^students/',StudentListView.as_view()),
]
有人可以幫助我解決這個問題?
編輯:
這裏是traceback
。
(VE) F:\Virtual Environments\VE\djangogirls\myprojects>python manage.py runserver
Performing system checks...
System check identified no issues (0 silenced).
May 25, 2017 - 19:23:58
Django version 1.11.1, using settings 'myprojects.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
[25/May/2017 19:23:59] "GET /admin/ HTTP/1.1" 302 0
Internal Server Error: /admin/login/
Traceback (most recent call last):
File "F:\VIRTUA~1\VE\lib\site-packages\django\core\handlers\exception.py", lin
e 41, in inner
response = get_response(request)
File "F:\VIRTUA~1\VE\lib\site-packages\django\core\handlers\base.py", line 217
, in _get_response
response = self.process_exception_by_middleware(e, request)
File "F:\VIRTUA~1\VE\lib\site-packages\django\core\handlers\base.py", line 215
, in _get_response
response = response.render()
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\response.py", line 107,
in render
self.content = self.rendered_content
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\response.py", line 82,
in rendered_content
template = self.resolve_template(self.template_name)
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\response.py", line 64,
in resolve_template
return select_template(template, using=self.using)
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\loader.py", line 48, in
select_template
return engine.get_template(template_name)
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\backends\django.py", li
ne 39, in get_template
return Template(self.engine.get_template(template_name), self)
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\engine.py", line 162, i
n get_template
template, origin = self.find_template(template_name)
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\engine.py", line 136, i
n find_template
name, template_dirs=dirs, skip=skip,
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\loaders\base.py", line
38, in get_template
contents = self.get_contents(origin)
File "F:\VIRTUA~1\VE\lib\site-packages\django\template\loaders\filesystem.py",
line 29, in get_contents
return fp.read()
File "F:\VIRTUA~1\VE\lib\codecs.py", line 321, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x98 in position 402714: inv
alid start byte
[25/May/2017 19:24:01] "GET /admin/login/?next=/admin/ HTTP/1.1" 500 114793
@Alasdair我更新了代碼。請看一看。 –
您是否創建了超級用戶使用任何孟加拉名稱或其他?你是如何創建用戶的?嘗試刪除用戶並使用'./manage.py createsuperuser'創建新的超級用戶並重新登錄 – ruddra
@ruddra我使用'python manage.py createsuperuser'命令創建超級用戶,用戶名是英文。 –