8
votes

Django - Passer la première rangée de tableau

J'ai une question assez simple, mais je ne peux pas sembler trouver une solution simple à elle. J'aimerais parcourir un tableau dans mon modèle Django, mais ignorer la première valeur.

Disons que j'ai un tableau comme celui-ci que je passe à mon modèle à travers une vue: xxx

dans mon modèle, je fais:

{% pour une matrice%} {{ une }} {% Endfor%}

Comment puis-je faire pour imprimer uniquement "2" "3 '" 4' "5 ', sans la première valeur?


0 commentaires

3 Réponses :


24
votes
{% for a in array|slice:"1:" %}{{ a }}{% endfor %}
See https://docs.djangoproject.com/en/1.3/ref/templates/builtins/#slice for more information.

2 commentaires

Fonctionne parfaitement merci. Je vais regarder dans cette fonction de tranche, je ne le savais pas


Avoir des problèmes avec cela lorsque le tableau est un query. Je pense que la réponse du programmeur du programmeur @some fonctionne plus universellement.



2
votes
{% for a in array %}
{% if forloop.counter != 1 %}
    {{ a }}
{% endif %}
{% endfor %}

1 commentaires

La solution de Jjeremy Lewis est probablement plus propre que si vous voulez faire quelque chose avec la première valeur



7
votes
{% for a in array %}
  {% if not forloop.first %}
    {{ a }}
  {% endif %}
{% endfor %}
There is of course forloop.last for the last iteration as well.They are all listed in the Django reference.

0 commentaires