miércoles, 27 de enero de 2010

If en los templates de Django 1.2 (alpha)

Una de las cosas que mencioné en el post anterior sobre frameworks web, fue que en Django el sistema de templates tenía algunas cosas que no me terminaban de convencer.

Más específicamente, no me agradaba demasiado que sea bastante limitado (aunque sea intencionalmente), y que redefinía una sintaxis a veces rara para cosas que eran comunes, y que todos estamos acostumbrados a hacer de otra manera.

Ejemplo: si queríamos hacer un If comparando si dos variables son iguales, en lugar de un clásico "if a == b", teníamos que escribir algo como "ifequals a b" (una sintaxis que me recuerda más a LISP que a Python, jeje).


En estos días se liberó la versión 1.2 alpha 1 de Django, y para mi felicidad, descubrí que el tag "if" de los templates está muy renovado. Ahora lo veo mucho más natural y Pythónico!


Entre otras cosas, permite hacer cosas como "if a == b", "if a < b", o con cualquier otro operador de la lista normal de operadores de comparación.

También permite mezclar ands y ors en la misma sentencia, algo que antes no se permitía y limitaba un poco.


Notas de release de Django 1.2 alpha 1.

Link directo a la sección sobre el tag if.

No hay comentarios:

Publicar un comentario