我想使用 导入 django 默认设置,from django.conf import global_settings
然后添加MIDDLEWARE_CLASSES
到它。我喜欢用我的设置来做这件事,这样我就知道我添加了什么以及什么是默认的。所以我的设置文件看起来像这样:
from django.conf import global_settings
...
global_settings.MIDDLEWARE_CLASSES += (
'debug_toolbar.middleware.DebugToolbarMiddleware',
)
此策略适用于其他设置,例如TEMPLATE_CONTEXT_PROCESSORS
,但当我尝试时,它不起作用。我print global_settings.MIDDLEWARE_CLASSES
在添加调试工具栏中间件后添加,这是我使用时的输出runserver
('django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'debug_toolbar.middleware.DebugToolbarMiddleware')
('django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'debug_toolbar.middleware.DebugToolbarMiddleware', 'debug_toolbar.middleware.DebugToolbarMiddleware')
Validating models...
0 errors found
Django version 1.3.1, using settings 'canada.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
如果你滚动你可以看到它运行了两次设置。第二次再次添加设置。我怎样才能防止这种情况?我必须MIDDLEWARE_CLASSES
在设置中硬编码我的吗?还有一个很好的理由不导入默认的 django 设置吗?