Reading time: 2 – 3 minutes
Un article ‘fast-n-dirty’ sobre potser la millor llibreria que he trobat per treballar amb templates i python: Cheetah. Es tracta de poder generar fitxers de texte de forma senzilla: fitxers de configuració, pàgines web, emails, etc. a partir de plantilles. Realment útil en molts entorns.
Les funcionalitats (copy-paste de la web):
- is supported by every major Python web framework.
- is fully documented and is supported by an active user community.
- can output/generate any text-based format.
- compiles templates into optimized, yet readable, Python code.
- blends the power and flexibility of Python with a simple template language that non-programmers can understand.
- gives template authors full access to any Python data structure, module, function, object, or method in their templates. Meanwhile, it provides a way for administrators to selectively restrict access to Python when needed.
- makes code reuse easy by providing an object-oriented interface to templates that is accessible from Python code or other Cheetah templates. One template can subclass another and selectively reimplement sections of it. Cheetah templates can be subclasses of any Python class and vice-versa.
- provides a simple, yet powerful, caching mechanism that can dramatically improve the performance of a dynamic website.
- encourages clean separation of content, graphic design, and program code. This leads to highly modular, flexible, and reusable site architectures, shorter development time, and HTML and program code that is easier to understand and maintain. It is particularly well suited for team efforts.
- can be used to generate static html via its command-line tool.
a qui va orientat (copy-paste de la web):
- for programmers to create reusable components and functions that are accessible and understandable to designers.
- for designers to mark out placeholders for content and dynamic components in their templates.
- for designers to soft-code aspects of their design that are either repeated in several places or are subject to change.
- for designers to reuse and extend existing templates and thus minimize duplication of effort and code.
- and, of course, for content writers to use the templates that designers have created.