Python Jinja2 Templaatti-Injektiot
Jinja2
Python Jinja2 on mallinnusmoottori, joka mahdollistaa Python-koodin käytön HTML-templaattien luomiseen. Jinja2:ta käytetään usein yhdessä Python-webikehyksien, kuten Flaskin, kanssa, mutta sitä voidaan käyttää myös itsenäisesti.
Jinja2:n käyttö HTML-templaattien luomiseen on melko yksinkertaista. Voit esimerkiksi luoda Jinja2-mallin, jossa voit käyttää muuttujia, ehtolauseita ja silmukoita. Alla on muutama esimerkki:
Muuttujien käyttö
1{% set nimi = "Matti" %}
2
3<p>Tervehdys, {{ nimi }}!</p>Tämä malli asettaa muuttujan nimi arvoksi "Matti" ja tulostaa sitten HTML-tunnisteeseen <p> tervehdyksen "Tervehdys, Matti!".
Ehtolauseiden käyttö
1{% if ika >= 18 %}
2
3<p>Olet täysi-ikäinen!</p>
4{% else %}
5<p>Olet alaikäinen.</p>
6{% endif %}Tämä malli tarkastaa onko ikä-muuttujan arvo suurempi tai yhtäkuin 18 ja tulostaa "Olet täysi-ikäinen" tai "Olet alaikäinen" sen mukaan.
Silmukoiden käyttö
1<ul>
2{% for tuote in tuotteet %}
3 <li>{{ tuote.nimi }} - {{ tuote.hinta }}€</li>
4{% endfor %}
5</ul>Tämä malli luo luettelon <ul>-tunnisteeseen, jossa jokainen listan elementti (<li>) sisältää tuotteen nimen ja hinnan. Tämä malli käyttää for-silmukkaa käydäkseen läpi listan tuotteet.
Nämä ovat vain muutamia esimerkkejä Jinja2:n käytöstä. Jinja2:ta voidaan käyttää monin eri tavoin ja sillä on paljon ominaisuuksia, jotka tekevät HTML-templaattien luomisesta joustavaa ja tehokasta.
Hakkeroinnin oppiminen alkaa tästä
Sadat interaktiiviset kurssit, virtuaalilabrat ja CTF-haasteet selaimessasi. Aloita ilmainen kokeilu ilman korttitietoja.