Référencement des variables de modèle dans les expressions Jinja : une solution
Cet article aborde un problème courant rencontré lors de la tentative d'intégration de variables de modèle dans des expressions Jinja pour Génération d'URL à l'aide de url_for().
Le Problème :
Les modèles Jinja2 permettent d'utiliser des expressions entourées de doubles accolades ({{ ... }}). Cependant, lorsqu'ils tentent d'inclure une variable de modèle dans la fonction url_for(), les utilisateurs peuvent rencontrer des erreurs de syntaxe s'ils ont imbriqué des accolades supplémentaires :
<a href="{{ url_for('/magic/{{ filename }}') }}">Click to see magic happen</a>
La solution :
La clé pour résoudre ce problème est de supprimer les accolades imbriquées inutiles. Les expressions Jinja sont déjà considérées comme similaires à Python, il n'est donc pas nécessaire d'ajouter des crochets autour de la variable de modèle.
<a href="{{ url_for('moremagic', filename=name) }}">Click to see magic happen</a>
Dans ce code ajusté, filename=name attribue la valeur de la variable de modèle de nom au nom de fichier. paramètre de la route moremagic.
Remarque supplémentaire :
Il est crucial de noter que url_for() nécessite un nom de point de terminaison, pas le chemin de l'URL lui-même. Dans l'exemple fourni, le nom du point de terminaison est moremagic, qui est par défaut le nom de la fonction s'il n'est pas explicitement défini.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!