2010-05-07 5 views
10

¿En qué casos es mejor crear etiquetas de plantilla (y cargarlas en la plantilla), que crear un procesador de contexto (que llena la solicitud automáticamente)?¿Mejores prácticas para procesadores de contexto frente a etiquetas de plantilla?

p. Ej. Tengo un menú dinámico que debe incluirse en todas las plantillas, así que lo estoy poniendo en mi base.html. ¿Cuál es el uso preferido: procesador de contexto o etiqueta de plantilla personalizada? Y ¿por qué?

Respuesta

12

Context procesors es para poner datos (información, contenido, objetos) en el contexto utilizado para representar la página.

Las etiquetas de plantilla son para formatear o procesar ese contenido.

Una etiqueta de plantilla que compone datos nuevos es confusa. No es imposible o incorrecto, pero es muy confuso.

+1

no necesariamente en mi opinión: {% advertisementtags carga%} {% get_top_ads como MyAds%} {% de anuncio en MyAds%} {% ...%} endfor esa es la forma de etiquetas de plantilla. con un procesador de contexto, podría poner "myads" en el contexto también. Es por eso que estaba pidiendo cosas de "mejores prácticas". Tal vez sea solo una cuestión de gusto. – mawimawi

+4

@mawimawi: No es una cuestión de gusto. Las "etiquetas publicitarias" * deben * venir de un procesador de contexto: son contenido. Técnicamente, * cualquier cosa * es posible, incluso cosas realmente difíciles de entender. es más simple si el contenido proviene del contexto. –

Cuestiones relacionadas