Django multisélectionner des cases à cocher
-
08-07-2019 - |
Question
J'ai une liste d'objets, chacun avec sa propre case à cocher, dans laquelle l'utilisateur peut en sélectionner plusieurs. La liste est le résultat d'une requête.
Comment marquer dans la vue quelles cases sont déjà cochées? Il ne semble pas y avoir d’opérateur in dans le langage des modèles.
Je veux quelque chose comme:
<input {% if id in selectedIds %}checked {% endif %}>
La solution
Vous pouvez utiliser une étiquette de modèle comme celle de cet extrait de commentaire:
http://www.djangosnippets.org/snippets/177/
@register.filter
def in_list(value,arg):
return value in arg
À utiliser dans les modèles:
The item is
{% if item|in_list:list %}
in list
{% else %}
not in list
{% endif %}
Pas très intelligent, mais ça marche.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow