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 :

Limiter à 5 images par article


Sujet :

Django Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 74
    Par défaut Limiter à 5 images par article
    Bonjour,

    Contexte :

    Je souhaite limiter à 5 images par articles.
    L'ajout d'une photo se fait en ajax en appellant /api/add_picture.

    Dans api/add_picture, je fait ceci :

    1) Compte le nombre de photos (1ms)
    2) S'il y en a déjà 5 : rejet de la photo, et on arrête là.
    3) Traitement de la photo (100ms)
    4) Ajout de la photo (1ms)

    En pratique, l'utilisateur sélectionne ses photos et envoi tout en même temps. L'api est appelée autant de fois qu'il y a de photos, le tout en parallèle.

    Problème :

    Lorsque l'utilisateur essai d'envoyer 10 photos en même temps, j'ai toujours quelques photos en plus alors que je veux limiter à 5. Je comprends bien le problème : certaines requêtes sont déjà à l'étape de traitement, mais pas encore ajoutée, au moment où les dernières sont encore en train de compter le nombre de photos. Elles passent le test sans être rejetées, et font finalement dépasser mon nombre de photos.

    Mauvaises solutions :

    J'ai pensé à deux solutions, mais elles ne fonctionnent pas :
    1) Faire le traitement avant le comptage pour diminuer l'intervale qui pose problème. Ca limite un peu.
    2) Faire un comptage à la fin et supprimer la photo en cours d'ajout si le quota est dépassé. Cette fois on risque de supprimer la photo dans l'intervalle entre le comptage et la suppression d'une autre requête. Il nous manquerait une photo.

    Demande d'aide :

    Pouvez-vous s'il vous plait m'aider à trouver une solution qui rejète systématiquement tout ce qui dépasse 5 photos, sans jamais en rejeter une de trop ? Je développe mon site avec django et l'ajout d'une photo consiste à enregistrer le fichier et à ajouter une élément dans ma BDD.

    Je vous remercie pour votre aide.

    David

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    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 762
    Par défaut
    Salut,

    Il serait plus simple de contrôler le nombre de photos depuis le Browser (i.e. à partir de Javascript qui sera chargé avec).

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

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 74
    Par défaut
    Bonjour,

    Pour résoudre mon problème, j'ai fait comme ceci :

    1) Enregistrement de l'image
    2) Récupération des 5 images ayant la plus petite primary key.
    3) Si l'image n'est pas parmi les 5, je la supprime, et je dis qu'elle est rejeté.

    Enregistrer l'image d'abord me permet d'avoir une primary key.
    La primary key ne faisant qu'augmenter, j'ai la garantie qu'une image qui est dans le groupe des 5 n'en ressort jamais d'elle même suite à l'ajout d'une autre image.
    Je peux alors supprimer mon image si elle est de trop sans impacter le groupe des 5.

    Merci pour l'intérêt que vous avez porté sur le sujet.

Discussions similaires

  1. Envoyer et récupèrer une image par DataSnap - Limitation BLOB
    Par LaurentC33 dans le forum Bases de données
    Réponses: 5
    Dernier message: 14/01/2014, 15h18
  2. limiter le nombre d'images par ligne
    Par cyrill.gremaud dans le forum Langage
    Réponses: 16
    Dernier message: 04/05/2006, 11h46
  3. Capture image par imprime ecran
    Par tomnie dans le forum Applications et environnements graphiques
    Réponses: 9
    Dernier message: 14/04/2004, 09h02
  4. Capture d image par webcam
    Par moimoimoi3x dans le forum C++Builder
    Réponses: 7
    Dernier message: 03/07/2003, 08h48
  5. Blocage à 60 images par seconde
    Par houssa dans le forum OpenGL
    Réponses: 5
    Dernier message: 24/06/2003, 08h52

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