[英]python manage.py runserver
我正在嘗試學習django.I嘗試通過運行來啟動服務器
python manage.py runserver
但我得到以下錯誤
Django version 1.6.2, using settings 'coding.settings'
Starting development server at //127.0.0.1:8000/
Quit the server with CTRL-BREAK.
Traceback (most recent call last):
File "C:\Python27\lib\wsgiref\handlers.py", line 85, in run
self.result = application(self.environ, self.start_response)
File "C:\Python27\lib\site-packages\django\contrib\staticfiles\handlers.py", l
ine 67, in __call__
return self.application(environ, start_response)
File "C:\Python27\lib\site-packages\django\core\handlers\wsgi.py", line 187, i
n __call__
self.load_middleware()
File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 47, in
load_middleware
mw_class = import_by_path(middleware_path)
File "C:\Python27\lib\site-packages\django\utils\module_loading.py", line 19,
in import_by_patherror_prefix, dotted_path))
ImproperlyConfigured: d doesn't look like a module path
請幫助我刪除此錯誤。
settings.py
Iv'e使用django的配置玩-將AUTHENTICATION_BACKENDS
從2個后端更改為一個
在進行小型調試會話后,iv'e找到了解決方案
AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends.ModelBackend')
要么
AUTHENTICATION_BACKENDS = 'django.contrib.auth.backends.ModelBackend'
AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend']
顯然您的配置不正確:
MIDDLEWARE_CLASSES = (
'django.middleware.common.commonMiddleware'
'django.contrib.sessions.middleware.SessionMiddleware'
'django.middleware.csrf.CsrfViewMiddleware'
'django.contrib.auth.middleware.AuthenticationMiddleware'
'django.contrib.messages.middleware.MessageMiddleware'
)
這些中間件模塊路徑之間應該有逗號:
MIDDLEWARE_CLASSES = (
'django.middleware.common.commonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
)
沒有逗號,Python中的( 'firstsecondthird'
('first' 'second' 'third')
是連接的字符串值'firstsecondthird'
。
當Django處理MIDDLEWARE_CLASSES
設置時,它將遍歷其元素以加載模塊。 如果用逗號分隔模塊路徑,則MIDDLEWARE_CLASSES
是一個元組,並且Django會正確加載每個模塊。 如果省略所有逗號,則MIDDLEWARE_CLASSES
是一個字符串,因此迭代該值將迭代該字符串的字母。 第一個字母是d
,因此Django嘗試加載路徑d
,該路徑當然“看起來不像模塊路徑”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.