Changer les mots réservés du moteur de modèle Flask

Décrit comment modifier la chaîne réservée {{ }} {% `%} ʻ dans le modèle Flask.

Ce qui me rend heureux, c'est que, par exemple, si vous essayez d'utiliser Vue.js, Vue.js utilise également {{ }}, qui entre en conflit avec Flask, mais cette méthode peut être évitée.

environnement

code

Vous pouvez changer {{ }} {% %} en [[ ]] [% %] avec les deux codes suivants.

main.py

from flask import Flask

#Création d'un environnement pour jinja2, le moteur de template de Flask.
from jinja2 import Environment, PackageLoader, select_autoescape
jinja2_environment = Environment(
    loader=PackageLoader(__name__, 'templates'),
    autoescape=select_autoescape(['html', 'xml']),
    block_start_string    ='[%',   #à l'origine{%
    block_end_string      ='%]',   #à l'origine%}
    variable_start_string ='[[',   #à l'origine{{
    variable_end_string   =']]'    #à l'origine}}
)

app = Flask(__name__)

@app.route('/')
def root():
    #Obtenez le modèle en spécifiant l'environnement créé
    template = jinja2_environment.get_template('index.html')
    #Modèle de rendu
    return template.render(var1="hello")

if __name__ == '__main__':
    app.run()

templates/index.html

<html>
  <body>
    [% if 1 > 0 %]
      [[ var1 ]]
    [% endif %]
  </body>
</html>

résultat

Lorsque vous exécutez main.py et accédez à http: // localhost: 5000 /

image.png

Je vais sortir.

Recommended Posts

Changer les mots réservés du moteur de modèle Flask
Changer la liste dans l'instruction for
Modifiez l'étiquette du périphérique (lecteur) au format vfat.
Changer la taille de police de la légende dans df.plot
Apprenez le modèle de conception "Méthode de modèle" en Python
Boucle les variables en même temps dans le modèle
Spécifiez l'URL de la vue dans le modèle Django
Enregistrer des mots dans le dictionnaire utilisateur GiNZA (SudachiPy)
Mots réservés Python
Modifier le fuseau horaire dans Oracle Database Docker