14 votes

Comment utiliser une liste littérale dans un fichier modèle Django ?

À partir d'un fichier modèle Django, je veux vérifier si ma variable myVar est "A" ou "B" (ou "C" ou "D", etc.). Je voudrais donc faire quelque chose comme ceci :

{% if myVar in ["A", "B"] %}
    Hello
{% else %}
    World
{% endif %}

Mais cela me donne une erreur de syntaxe dans la première ligne.

Comment puis-je alors utiliser une liste littérale dans le fichier modèle de Django ?

0voto

Py_Programadora Points 31

Vous ne pouvez pas définir une liste directement dans le modèle. Vous pouvez passer une liste au modèle en utilisant une vue dans views. py et un url dans urls. py. ex:Dans views. py

def view_name(request):
    list_name=['A', 'B', 'C'];
    render(request, 'directory/template_name.html'
    {'list_name':list_name}) 

Dans urls. py

urlpatterns = [
               path('index/', views.view_name, name='main-view'),
 ]

Dans le modèle

{% if myVar in list_name%}
Hello
{% else %}
World
{% endif %}

-4voto

Saqib Ali Points 1084

La réponse se trouve ici : vérifier la présence dans une liste modèle django

Cette question est essentiellement un doublon.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X