Mako (moteur de template)

Mako est un moteur de templates pour le langage de programmation Python. Mako est utilisé par Reddit[4]. Il s'agit du langage de template inclus par défaut dans les frameworks Web Pylons[5] et Pyramid[6].

Fonctionnalités

  • Structure de contrôle basé sur le langage Python (boucles, conditions, etc.)
  • Utilisation de morceau de Python
  • Inclusion entre templates
  • Callable blocks
  • Héritage
  • Support pour Python 2.7 et Python 3.x.

Exemples

Usage le plus simple dans un programme Python:

from mako.template import Template

mytemplate = Template("hello world!")
print(mytemplate.render())

Un usage plus typique avec des exemples d'héritage, de boucles et des variables:

<%inherit file="base.html"/>
<%
    rows = [[v for v in range(0,10)] for row in range(0,10)]
%>
<table>
    % for row in rows:
        ${makerow(row)}
    % endfor
</table>

<%def name="makerow(row)">
    <tr>
    % for name in row:
        <td>${name}</td>\
    % endfor
    </tr>
</%def>

Références

Liens externes

  • icône décorative Portail de la programmation informatique
  • icône décorative Portail des logiciels libres
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons – Attribution – Partage à l’identique. Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.