如何在Django 1.8.7中处理异常

时间:2017-05-17 07:45:30

标签: python django

当我在Django中运行开发服务器时,异常发生如下。

  

?:( 1_7.W001)未设置MIDDLEWARE_CLASSES。       提示:Django 1.7更改了MIDDLEWARE_CLASSES的全局默认值。 django.contrib.sessions.middleware.SessionMiddleware,django.contrib.auth.middleware.AuthenticationMiddleware和django.contrib.messages.middleware.MessageMiddleware已从默认值中删除。如果您的项目需要这些中间件,那么您应该配置此设置。

这是我的settings.py文件。

componentWillReceiveProps(newProps){
    console.log(this.props.upd.id, newProps)
}

在浏览器上,出现如下错误消息。

  

在/处配置错误     定义加载器时,不得设置app_dirs。     请求方法:GET     请求网址:http://localhost:8000/     Django版本:1.8.7     异常类型:NotperlyConfigured     例外价值:
    定义加载器时,不得设置app_dirs。     例外位置: init ,第36行中的/usr/lib/python2.7/dist-packages/django/template/engine.py

您能告诉我发生此异常的原因以及如何处理它?<​​/ p>

2 个答案:

答案 0 :(得分:3)

MIDDLEWARE_CLASSES = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

添加此项并删除其他中间件

添加此替代apps_dirs

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [
            BASE_DIR + '/templates/',
        ],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                # Insert your TEMPLATE_CONTEXT_PROCESSORS here or use this
                # list if you haven't customized them:
                'django.contrib.auth.context_processors.auth',
                'django.template.context_processors.debug',
                'django.template.context_processors.i18n',
                'django.template.context_processors.media',
                'django.template.context_processors.static',
                'django.template.context_processors.tz',
                'django.contrib.messages.context_processors.messages',
                "django.template.context_processors.request",
                'social.apps.django_app.context_processors.backends',
                'social.apps.django_app.context_processors.login_redirect',
            ],
            'debug': True
        },
    },
]

答案 1 :(得分:0)

当我删除'APP_DIRS':True 时,浏览器上的异常消失了。