Comment additionner, multiplier le nombre de variables dans un modèle Django?
La JS extrait de code que j'ai créé s'appuie sur la forloop.variable compteur être disponibles dans un {% for key, value in data.items %}..{% endfor %}
tag.
Est-il possible d'utiliser des opérateurs mathématiques (*, -, +, /) en collaboration avec le forloop.counter
variable?
OriginalL'auteur Charlesliam | 2013-08-20
Vous devez vous connecter pour publier un commentaire.
Il y a le filtre
ajouterajouter de la documentation.Je suis assez sûr il n'y a pas moyen d'utiliser les autres opérations mathématiques sur les nombres de modèles Django. Vous pouvez toujours faire votre propre cependant. Il n'est pas toujours une bonne idée de le faire.
Vous voulez garder votre logique à l'intérieur de la vue et de garder le rendu dans les modèles.
Dans votre cas, vous devez stocker votre compteur dans une variable JavaScript, et à utiliser dans votre code.
Le lien ne fonctionne plus. Ici la dernière version.
OriginalL'auteur Mathieu Marques
Il est possible d'utiliser django intégré widthratio balise de modèle et ajouter filtre:
{{forloop.counter|add:5}}
{{forloop.counter|add:"-5"}}
{% widthratio forloop.counter 5 1 %}
{% widthratio forloop.counter 1 5 %}
OriginalL'auteur Sergey
Utilisation django-mathfilters. Le
addition
filtre ne doit pas contraindre les nombres entiers de sorte que vous pouvez ajouter des flotteurs:OriginalL'auteur MadeOfAir
Après Mathieu Marques conseils, voici ce que j'ai fait à l'aide de filtre personnalisé.
Le modèle est rendu 5 enregistrement par page après l'utilisation de la pagination extrait. La par de présentation de la page de réinitialisation de la forloop.le compteur. Pour créer une accélération continue de compteur par page..
où
rb_page_no
est le numéro de la page actuelle et de les placer{% load extra_filter %}
sur mon modèle où extra_filter est le nom de fichier où je place lescompute_exact_id
.OriginalL'auteur Charlesliam
Je fais le suivant dans mon fichier de modèle carts.html
où mon point de vue en fonction de la fonction est:
Pour moi, cette approche fonctionne très bien
OriginalL'auteur Te ENe Te