Python Django-模板上下文处理器-破坏我的应用程序

Python Django-模板上下文处理器-破坏我的应用程序,python,django,django-templates,django-settings,Python,Django,Django Templates,Django Settings,我试图设置一个模板上下文处理器,比如,这样我就可以为每个模板提供信息 我在views.py中编写了此函数: def items_in_cart(request): """Used by settings.TEMPLATE_CONTEXT_PROCESSORS to provide an item count to every template""" cart, lines = get_users_cart_and_lines(request) return {'i

我试图设置一个模板上下文处理器,比如,这样我就可以为每个模板提供信息

我在views.py中编写了此函数:

def items_in_cart(request):
    """Used by settings.TEMPLATE_CONTEXT_PROCESSORS to provide an item count
    to every template"""
    cart, lines = get_users_cart_and_lines(request)
    return {'items_in_cart': lines.count()}
然后我将这一行添加到settings.py:

TEMPLATE_CONTEXT_PROCESSORS = ('Store.views.items_in_cart',)
但现在每当我进入任何页面时,都会出现以下错误:

ImproperlyConfigured at /

Put 'django.contrib.auth.context_processors.auth' in your TEMPLATE_CONTEXT_PROCESSORS setting in order to use the admin application.

我做错什么了吗?这是怎么回事?我尝试按照错误所说的操作,然后它将呈现一个页面,其中缺少我的所有样式表和图像。

Django有一组默认的模板上下文处理器,您需要在添加自己的模板上下文处理器时手动添加这些处理器

根据您的Django版本,这些是不同的,但是如果使用Django 1.3,您可能会有如下内容

TEMPLATE_CONTEXT_PROCESSORS = (
    "django.contrib.auth.context_processors.auth",
    "django.core.context_processors.debug",
    "django.core.context_processors.i18n",
    "django.core.context_processors.media",
    "django.core.context_processors.static",
    "django.contrib.messages.context_processors.messages",
    "Store.views.items_in_cart",
)

嗯,我可以把我的添加到现有的默认列表中吗?例如,TEMPLATE_CONTEXT_PROCESSORS=secret_default_location.TEMPLATE_CONTEXT_PROCESSORS+(“购物车中的商店视图项目”),您应该能够使用TEMPLATE_CONTEXT_PROCESSORS+=(“购物车中的商店视图项目”)要附加到默认值,可以使用要附加的行上方的“django.conf.global\u settings import TEMPLATE\u CONTEXT\u PROCESSORS”导入默认django设置。然后,您可以使用
TEMPLATE\u CONTEXT\u PROCESSORS+=('Store.views.items\u in\u cart')
在Django 1.10中,该值将从
global\u设置中删除,并应使用新的
TEMPLATES
设置。如何迁移添加到默认设置中的上述代码?是否应该手动包含它们?还有违约吗?