Caselle di controllo multi-selezione Django
-
08-07-2019 - |
Domanda
Ho un elenco di oggetti, ognuno con la propria casella di controllo, in cui l'utente può selezionare più di questi. L'elenco è il risultato di una query.
Come posso contrassegnare nella vista quali caselle di controllo sono già selezionate? Non sembra esserci un operatore in nel linguaggio dei template.
Voglio qualcosa sulla falsariga di:
<input {% if id in selectedIds %}checked {% endif %}>
Soluzione
Puoi usare un templatetag come quello in questo snippet commenti:
http://www.djangosnippets.org/snippets/177/
@register.filter
def in_list(value,arg):
return value in arg
Da utilizzare nei modelli:
The item is
{% if item|in_list:list %}
in list
{% else %}
not in list
{% endif %}
Non molto intelligente, ma funziona.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow