IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Django Python Discussion :

Update une valeur après un certain délais en base


Sujet :

Django Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2020
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2020
    Messages : 17
    Par défaut Update une valeur après un certain délais en base
    Bonjour,

    Je ne sais pas si mon sujet doit être posté ici ou dans le forum avec postgres, mais je suis face à un problème que je n'arrive pas à solutionner parfaitement. Peut-être que la solution parfaite n'existe pas aussi..
    Mon problème étant le suivant: je développe actuellement un projet sur un système d'éclairage publique. Une fois une lumière allumée, j'aimerai pouvoir l'éteindre automatiquement après une heure. Pour faire cela, j'ai une table qui stocke l'état de la lampe (si elle est allumée ou éteinte). Une fois qu'elle est allumée, j'aimerai pouvoir l'éteindre automatiquement après une heure (donc changer au bout d'une heure la variable qui me dit si la lampe est allumée ou non). J'ai fais quelques recherches, mais je ne suis tombé la plupart du temps sur un cron, mais le cron ne s'exécute qu'à des périodes fixes. Je ne sais pas non plus si Django offre des solutions vis à vis de mon problème. Je n'ai rien trouvé d'idéal dans la documentation. Et un trigger ne semble pas non plus correspondre à ma solution attendue.

    Savez-vous si j'ai raté quelque chose ou s'il n'y a pas mieux ?

    Je vous en remercie par avance.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    Si l'état de la lampe est allumé et qu'il faut l'éteindre dans une heure, il faut stocker l'état de la lampe et l'action à réaliser dans une heure. Et trouver le mécanisme qui va "trigger" l'action au bon moment.
    Si la question est de savoir si PostGreSQL supporte un tel mécanisme, il faut poster la question dans le bon forum.

    Si çà ne le supporte pas, un cron qui se répète toutes les X secondes pour aller voir ce qu'il y a à faire est une solution. note: modifier la représentation de l'état de la lampe en base que çà va activer le relais électrique qui va bien...

    Une autre question sera de faire cela depuis Django, vous pouvez explorer django-cron... mais vous devriez surtout vous intéresser au découpage de votre application en composants ayant un rôle bien définit et à les faire communiquer entre eux plutôt que fabriquer un monolithe avec des patchs partout.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2020
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2020
    Messages : 17
    Par défaut
    Bonsoir,

    Merci de votre réponse. En effet, je suis tombé sur cette histoire de cron et je m'en suis plutôt bien débrouillé avec.
    Mais votre phrase m'a intrigué :

    mais vous devriez surtout vous intéresser au découpage de votre application en composants ayant un rôle bien définit et à les faire communiquer entre eux plutôt que fabriquer un monolithe avec des patchs partout.
    Débutant Django, j'ai bien du mal à voir ce "découpage". Vous parlez du fait de sous-découper en plusieurs app ?

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Citation Envoyé par Barad Voir le message
    Débutant Django, j'ai bien du mal à voir ce "découpage". Vous parlez du fait de sous-découper en plusieurs app ?
    Django est un juste un serveur Web auquel des utilisateurs vont se connecter.
    De l'autre côté, il y a des/un tas d'équipements à actionner, suivre pour avoir leurs statuts qui n'a rien à voir avec une application Web.... Entre les 2, il y a la base de données (mais pas que...).

    Ce qui fait déjà 3 composants avec des rôles et responsabilités bien distincts.
    Ajouter des bouts à Django ou définir une interface entre des composants indépendants est un choix technique. Et comme c'est vous qui tenez le couteau, vous devez décidez là où couper et pourquoi.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. [AJAX] Retourner une valeur après un appel asynchrone ?
    Par Invité dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/01/2008, 10h03
  2. Réponses: 8
    Dernier message: 26/01/2008, 23h00
  3. garder une valeur apres un rechargement
    Par isma92 dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 02/02/2007, 13h43
  4. Comment fermer une popup après un certains temps ?
    Par magic8392 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 19/10/2005, 12h06
  5. une valeur apres la virguile
    Par adgabd dans le forum Bases de données
    Réponses: 1
    Dernier message: 07/02/2005, 11h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo