“CsrfViewMiddleware”对象不可迭代

wan*_*mer 1 python django django-templates django-views django-csrf

我是 Django 的新手,刚刚从另一个开发人员手中接手了这个项目。到目前为止我所做的就是从 git 克隆代码并安装依赖项。

在设置项目并运行python manager.py runserver并转到之后,localhost:8000/admin我立即收到一条错误消息,指出TypeError at /admin/login/'CsrfViewMiddleware' object is not iterable

追溯:

内部 39 中的文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/core/handlers/exception.py”。 response = get_response(request)

_legacy_get_response 249 中的文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/core/handlers/base.py”。 response = self._get_response(request)

_get_response 217 中的文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/core/handlers/base.py”。 response = self.process_exception_by_middleware(e, request)

_get_response 215 中的文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/core/handlers/base.py”。 response = response.render()

渲染 109 中的文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/response.py”。 self.content = self.rendered_content

在 render_content 86 中文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/response.py”。 content = template.render(context, self._request)

渲染 66 中的文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/backends/django.py”。 return self.template.render(context)

在渲染 206 中文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/base.py”。 with context.bind_template(self):

59中的文件“/usr/lib/python3.5/contextlib.py” __enter__return next(self.gen)

文件“/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/context.py”在bind_template 236中。 updates.update(processor(self.request))

异常类型:/admin/login/ 处的 TypeError

异常值:“CsrfViewMiddleware”对象不可迭代

在此输入图像描述

我会发布源代码中的代码,但我无法确定源代码中可能出现这种情况的原因。

我的设置.py:

import os
from datetime import datetime
from django.conf.global_settings import EMAIL_USE_SSL
INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'ourapp',
    'social.apps.django_app.default',
    'sendgrid',
    'corsheaders',
)

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
#    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'ourapp.middleWare.authenticationMiddleware.AuthenticationMiddleware'
)

ROOT_URLCONF = ''

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.contrib.auth.context_processors.auth',
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
        'django.middleware.csrf.CsrfViewMiddleware',
        'corsheaders.middleware.CorsMiddleware',
                'social.apps.django_app.context_processors.backends',
                'social.apps.django_app.context_processors.login_redirect',
            ],
        },
    },
]
Run Code Online (Sandbox Code Playgroud)

(抱歉缺少缩进。)任何有关如何从这里继续的想法将不胜感激!

414*_*0tm 5

尝试'django.middleware.csrf.CsrfViewMiddleware',从 中删除TEMPLATES。大概'corsheaders.middleware.CorsMiddleware',也是