Bonjour a tous j'aimerais créer un enregistrement temporaire dans un modele avec django
J'aimerais par exemble que apres un certain temp un enregistrement ce retire de mon modele automatiquement
Merci d'avance
Bonjour a tous j'aimerais créer un enregistrement temporaire dans un modele avec django
J'aimerais par exemble que apres un certain temp un enregistrement ce retire de mon modele automatiquement
Merci d'avance
Bonjour.
Des enregistrements temporaires, j'en ai fait plein hier sur un projet professionnel avec Django.
Quel est la nature de cet enregistrement temporaire ?
Est-ce pour tester le model ?
Si oui, vous pourriez utiliser -par exemple- les modules pytest et pytest-django, puis écrire un script de tests pour tester la création de votre enregistrement.
Sinon, via python manage.py shell vous pouvez également faire ce genre de choses.
Que voulez-vous exactement ? Tester le model ou bien avoir un enregistrement à la durée de vie définie ?
Un petit exemple de création temporaire d'enregistrement :
Le model dans le fichier models.py :
Le test :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 #!/usr/bin/env python3 from django.db import models from django.utils.translation import gettext_lazy as _ class Personne(models.Model): nom: models.TextField = models.TextField ( null=False, blank=False, help_text=_('Nom de la personne'), ) prenom: models.TextField = models.TextField( null=False, blank=False, help_text=_('prenom de la personne'), )
Un petit coup en console de pytest -vv et le test sera joué et l'enregistrement non crée dans la base de données.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 #!/usr/bin/env python3 import pytest from models import Personne class TestPersonne: @pytest.mark.django_db def test_create_new_record(self) -> None: record, _ = Personne.objects.update_or_create(nom='FOO', prenom='Bar') assert record.nom == 'FOO' assert record.prenom == 'Bar'
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager