Comment Voir si une Chaîne Contient une Autre Chaîne dans Django Template
C'est mon code dans un template.
{% if 'index.html' in "{{ request.build_absolute_uri }}" %}
'hello'
{% else %}
'bye'
{% endif %}
Maintenant mon url valeur est actuellement "http://127.0.0.1:8000/login?next=/index.html"
Même si "index.html"
est là, dans la chaîne de caractères qu'elle imprime toujours au revoir.
Lorsque j'exécute le même code en python shell dans lequel il travaille. Pas sûr de ce que l'erreur est.
- écrire un modèle personnalisé balises qui vont vous aider à
- peut-être cet extrait de djangosnippets.org/snippets/1350 peuvent vous aider à
Vous devez vous connecter pour publier un commentaire.
Essayer en enlevant l'excès de
{{...}}
les balises et les"..."
des guillemets autour derequest.build_absolute_uri
, il a travaillé pour moi.Puisque vous êtes déjà dans une
{% if %}
balise, il n'est pas nécessaire d'entourerrequest.build_absolute_uri
avec{{...}}
balises.Parce que des citations vous êtes littéralement à la recherche de la chaîne de
"{{ request.build_absolute_uri }}"
et pas évalués Django balise que vous le souhaitez.{% if 'index.html' in request.build_absolute_uri %}
cela fonctionne pour moi. Je suis censé écrire des balises de modèle personnalisées. Mais qui a fonctionné pour moi.Peut-être trop tard, mais voici une version allégée :
Cela peut être testé avec Jinja: