Estoy intentando crear un procesador de contexto personalizado que muestre una lista de elementos de menú para un usuario conectado. He hecho lo siguiente:No se puede invocar el procesador de contexto personalizado
Dentro de mi settings.py tengo
TEMPLATE_CONTEXT_PROCESSOR = ( 'django.contrib.auth.context_processors.auth', 'mysite.accounts.context_processors.user_menu', )
Bajo las cuentas submódulo tengo context_processors.py
con lo siguiente, por ahora:
def user_menu(request): return {'user_menu':'Hello World'}
En mi página de plantilla tengo lo siguiente:
{% if user.is_authenticated %} Menu {{user_menu}} {% endif %}
La vista invocación es el siguiente:
def profile(request): return render_to_response('accounts/profile.html',context_instance=RequestContext(request))
Sin embargo no estoy en condiciones de obtener el {{user_menu}}
para hacer cualquier cosa en la página, sé que el usuario se autentica como otras secciones de la plantilla con controles similares hacen correctamente. Me estoy perdiendo de algo. Por favor ayuda Gracias
Editar: Gracias Ben, Daniel, he fijado el (S) en TEMPLATE_CONTEXT_PROCESSOR
, sin embargo Django ahora tiene problemas para resolver el módulo y me sale el siguiente mensaje de
Error importing request processor module django.contrib.auth.context_processors: "No module named context_processors"
ACTUALIZACIÓN: lo arreglé cambiando la ruta de acceso a django.core.context_processors.auth
parece que los módulos se han movido alrededor
Debería ser 'TEMPLATE_CONTEXT_PROCESSORS' –