我有一个上下文流程,可以为用户计算通知并包含代价高昂的查询:
form
在def notifications(request):
if not request.user.is_authenticated():
c = {}
c['num_alerts']= 0
return c
else:
alerts = []
uid = request.user.id
#Calculate number of notifications for a user
我有:
settings.py
大多数请求来自未经身份验证的用户。所以我想知道如何将它们排除在TEMPLATE_CONTEXT_PROCESSORS = ("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",
'postman.context_processors.inbox',
'myproj.context_processors.notifications', #<This is the context processor
)
之外?
在这种情况下,使用模板context_processor可能不是最好的主意吗?如果是这样,有什么更好的选择?