2016-08-29 3 views
0

저는 장고를 처음 사용하기 때문에이 프로젝트의 다른 개발자를 대신했습니다. 지금까지 제가 한 일은 git의 코드를 복제하고 의존성을 설치하는 것입니다.'CsrfViewMiddleware'객체가 반복 가능하지 않습니다.

나는 TypeError at /admin/login/, 'CsrfViewMiddleware' object is not iterable라는 오류 얻을 즉시 프로젝트를 설정하고 python manager.py runserver를 실행하고 localhost:8000/admin로 이동 후 :

역 추적을 :

파일 "/ 홈/abhay/코드/가상 환경/리그/리그/파이썬 3.5/site-packages/django/core/handlers/exception.py " in inside 39. response = get_response(request)

(210)

파일 "/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/core/handlers/base.py"_legacy_get_response에서

파일 " /home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/core/handlers/base.py "_get_response에서 (217) response = self.process_exception_by_middleware(e, request)

파일 "/ 홈/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/core/handlers/base.py " in _get_respons 전자 (215) response = response.render()

"/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/response.py"파일 는에서 렌더링 (109) self.content = self.rendered_content

파일 "/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/response.py"rendered_content에서 86 content = template.render(context, self._request)

파일 "/ 시간 "에 렌더링 (66) return self.template.render(context)

파일 "오메/abhay/코드/virtualenvironments/leaguesx/lib 디렉토리/python3.5/사이트 패키지/장고/템플릿/백엔드/django.py/홈/abhay/코드 에 /usr/lib/python3.5/contextlib.py "" (206) with context.bind_template(self):

파일을 렌더링 에서 "/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/base.py __enter__ 59. return next(self.gen)

파일 "/home/abhay/code/virtualenvironments/leaguesx/lib/python3.5/site-packages/django/template/context.py" in bind_template 236.updates.update(processor(self.request))

예외 유형 :/관리자/로그인시 형식 오류/

예외 값 : 'CsrfViewMiddleware'개체 내가 소스 코드를하지만 난에서 코드를 게시 할 것

enter image description here

반복 가능한 아니다 근원에서 이것이 어디서 일어 났는지는 알 수 없다.

내 settings.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', 
      ], 
     }, 
    }, 
] 

모든 아이디어는 크게 감사하겠습니다!

+2

장고 자신의 내부 기능을 큰 덩어리로 인용하는 것이 아니라, 자신의 코드, 특히 설정 파일을 보여주십시오. –

+0

@Daniel Roseman 완료. 소스 코드에 대한 세부 사항이 부족한 점에 대해 사과드립니다. 내 지식이 부족하다는 것을 반영합니다. – wanderingProgrammer

+1

설정에 중요한 정보가 있습니다. 당신은 아마 그것을 편집해야합니다. – 4140tm

답변

3

'django.middleware.csrf.CsrfViewMiddleware',TEMPLATES에서 삭제 해보세요. 아마 'corsheaders.middleware.CorsMiddleware',