Jinja

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 23 noiembrie 2021; verificările necesită 2 modificări .

Jinja (pronunțat jinja ) este un motor de șabloane pentru limbajul de programare Python . Este similar cu motorul de șabloane Django , dar oferă expresii asemănătoare Python, permițând executarea șabloanelor într-un sandbox . Este un motor de șabloane de text, deci poate fi folosit pentru a crea orice fel de marcare, precum și cod sursă. Licențiat sub licența BSD .

Motorul de șablon Jinja vă permite să personalizați etichetele [1] , filtrele, testele și variabilele globale [2] . De asemenea, spre deosebire de motorul de șabloane Django, Jinja permite constructorului de șabloane să apeleze funcții cu argumente pe obiecte.

Jinja, la fel ca Smarty , vine și cu un sistem de filtrare ușor de utilizat, similar conductei Unix .

Exemplu

Un exemplu simplu de șablon:

din jinja import from_string tmpl = from_string ( ''' \ <html> <head><title>{{ variabilă|escape }}</title></head> <body> { % for item in item_list %} {{ item }}{ % dacă nu loop.last %},{ % e ndif %} { % e ndfor %} </body> </html>''' ) print ( tmpl . render ( variabilă = 'Valoare cu date <nesigure>' , item_list = [ 1 , 2 , 3 , 4 , 5 , 6 ] ))

Rezultat în HTML:

< html > < head >< title > Valoare cu < nesigur > date </ title ></ head > < body > unu, 2, 3, patru, 5, 6 </ body > </ html >

Aplicație

Pe lângă cadrele web ( Flask ), Jinja2 este folosit și, de exemplu, în sistemul de management al configurației SaltStack [3] și Ansible .

Note

  1. Extensii - Documentația Jinja2 2.7-dev (link descendent) . Consultat la 27 ianuarie 2012. Arhivat din original la 30 septembrie 2010. 
  2. Extensii - Documentația Jinja2 2.7-dev (link descendent) . Consultat la 27 ianuarie 2012. Arhivat din original la 30 septembrie 2010. 
  3. Colton Myers. Capitolul 5. Extinderea statelor noastre cu Jinja2 și Pillar // Învățarea SaltStack. - Editura Packt, 2015. - 174 p. - ISBN 978-1-78439-901-6 .

Literatură

  • Cunningham, K. Python în 24 de ore, Sams Teach Yourself. - Pearson Education, 2013. - 320 p. — ISBN 9780133354461 .

Link -uri