Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django 1.8:配置不当:模块;django.contrib.auth.middleware”的;不定义一个;SessionAuthenticationMiddleware“;属性/类_Python_Django_Middleware_Django Middleware_Django 1.8 - Fatal编程技术网

Python Django 1.8:配置不当:模块;django.contrib.auth.middleware”的;不定义一个;SessionAuthenticationMiddleware“;属性/类

Python Django 1.8:配置不当:模块;django.contrib.auth.middleware”的;不定义一个;SessionAuthenticationMiddleware“;属性/类,python,django,middleware,django-middleware,django-1.8,Python,Django,Middleware,Django Middleware,Django 1.8,我开始了我的虚拟电视。然后通过python manage.py runserver启动我的服务器。 我最终访问了我的django站点,并得到以下错误 (venv)N$ python manage.py runserver Validating models... 0 errors found June 11, 2015 - 19:27:19 Django version 1.6.5, using settings 'nirsite.settings' Starting development

我开始了我的虚拟电视。然后通过
python manage.py runserver
启动我的服务器。 我最终访问了我的django站点,并得到以下错误

(venv)N$ python manage.py runserver
Validating models...

0 errors found
June 11, 2015 - 19:27:19
Django version 1.6.5, using settings 'nirsite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Traceback (most recent call last):
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/wsgiref/handlers.py", line 85, in run
    self.result = application(self.environ, self.start_response)
  File "/Library/Python/2.7/site-packages/django/contrib/staticfiles/handlers.py", line 67, in __call__
    return self.application(environ, start_response)
  File "/Library/Python/2.7/site-packages/django/core/handlers/wsgi.py", line 187, in __call__
    self.load_middleware()
  File "/Library/Python/2.7/site-packages/django/core/handlers/base.py", line 45, in load_middleware
    mw_class = import_by_path(middleware_path)
  File "/Library/Python/2.7/site-packages/django/utils/module_loading.py", line 31, in import_by_path
    error_prefix, module_path, class_name))
ImproperlyConfigured: Module "django.contrib.auth.middleware" does not define a "SessionAuthenticationMiddleware" attribute/class
我已经查过了,我无法用这些答案来解决这个问题。鉴于venv设置正确,我认为摆脱任何中间软件都没有意义

我可以根据要求提供更多信息

更新:

好吧,我的虚拟电视好像有问题。 在我启动这个virtualenv之后,我确实在它里面安装了django,但是现在如果我再次在它里面输入,我会得到以下结果:

Requirement already satisfied (use --upgrade to upgrade): django in /Library/Python/2.7/site-packages
我想这并不是指我的虚拟世界,所以我猜这是个问题。为什么我所在的venv没有安装django?我怎样才能解决这个问题?下次不会遇到这个问题吗?

你写的:Django 1.8

但是看看log:Django版本1.6.5


存在问题-请在virtualenv中检查django版本,或者您可能只是忘记了为django 2.0及以上版本激活virtualenv

Django 2.0中删除了SessionAuthenticationMiddleware(参见Django 2.0发行说明)

只需将其从
中间件\u类中删除即可


发布到这里是因为我在升级到Django 2时遇到了同样的问题。您是否尝试从中间件类中的project settings.py中删除“Django.contrib.sessions.middleware.SessionMiddleware”是的,我仍然收到相同的错误。我不明白为什么我要把它拿走?但是,如果我删除所有这些,似乎可以修复出现的错误。不过,我真的不想这样做。回溯表明它不会在virtualenv中搜索Django安装,而是从安装在系统Python库中的版本中搜索,该版本位于
/library/Python/2.7/…
。将Django安装到virtualenv中是否没有问题?你还看到
pip install django
的输出吗?@sthzg我已经用更多信息更新了我的问题。当你激活你的virtualenv并键入
哪个pip
哪个python
时,这些是否指向你的virtualenv的正确路径?如果是,请尝试使用
pip install安装Django——忽略已安装的Django
。如果Django已经在系统范围内安装()并安装到您的virtualenv,则应该忽略此问题。之后,您可以停用并重新激活您的virtualenv,然后再次测试它。