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

Python Discussion :

exception message erreur


Sujet :

Python

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut exception message erreur
    bonjour

    j'tilise django et j'ai dans le module view j'ai une fontion python qui execute une autre fonction

    qui doit provoquer l'affichage d'une page html avec un message d'erreur

    pour la premiere fonction

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    def calcul(maref, maprop):
        ...
        if sizedata==0:
            raise(ValueError)
        ...
        return valeur_T, valeur_min, valeur_max, valeur_moy, nomfichier
    pour la deuxieme fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    affich_graphe2(request):
        ...
        try:
            valeur_T, valeur_min, valeur_max, valeur_moy, nomfichier = calcul(val_nom, valT1)
         except ValueError:
            print 'aucune donnee'
            return render_to_response('material/erreur2.html')
    j affiche bien aucune donnee

    mais apres, le return render_to_response('material/erreur2.html') ne s'execute pas

    je comprend pas pourquoi

  2. #2
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Ton fichier html est bien situé comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
       MonProjet
        |----MonApplication
                |----templates
                        |----material
                                |----erreur2.html
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    oui c'est bien ca

  4. #4
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Citation Envoyé par pat100 Voir le message
    mais apres, le return render_to_response('material/erreur2.html') ne s'execute pas
    C'est à dire ? T'as une page blanche ?
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    j'execute jusqu'au print

    apres rien ne se passe

    si je met un print apres le render ca passe pas

  6. #6
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Aucune erreur n'est générée/affichée ?

    Sur ton navigateur tu vois quoi ?
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    firebug donne page not found

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    c'est quand même curieux que lorsqu'il s'agit de traiter l'erreur dans une fonction unique ca marche

    et lorsqu'il s'agit d'une fonction contenant un appel a une autre fonction

    ca marche plus

    et pourtant on declenche bien le valueError

    dans un cas le render to response marche et pas dans l'autre

  9. #9
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Et si tu fais ça, ça marche ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    page='material/goodpage.html'
    try:
       valeur_T, valeur_min, valeur_max, valeur_moy, nomfichier = calcul(val_nom, valT1)
    except ValueError:
       page='material/erreur2.html'
    return render_to_response(page)
    Ce qui m'embête c'est que Python c'est pas php, il doit afficher une stacktrace dans la console s'il rencontre une erreur.....
    Tu utilises le serveur web intégré à Django ou Apache ?
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    non ca marche pas

    j'utilise firefox avec le serveur de developpement de django

    http://127.0.0.1:8000/

  11. #11
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Citation Envoyé par pat100 Voir le message
    non ca marche pas
    C'est à dire ?????

    T'as bien un message d'erreur dans la console là où tu lances python manage.py runserver.....
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    la console DOS renvoie rien

    firebug renvoie "NetworkError: 404 NOT FOUND

  13. #13
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Comment tu sais que le print 'aucune donnée' est bien passé si tu vois rien nulle part ?
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  14. #14
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    je disais que la console dos ne renvoie pas de message d'erreur

    Elle renvoie bien le message "aucune donnée enregistree"

  15. #15
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    et avec render ça donne quoi ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    from django.shortcuts import render
     
    affich_graphe2(request):
       page='material/goodpage.html'
       try:
          valeur_T, valeur_min, valeur_max, valeur_moy, nomfichier = calcul(val_nom, valT1)
       except ValueError:
          page='material/erreur2.html'
       return render(request,page)
    Tu importes bien la fonction depuis le paquet Django en début de fichier ?
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  16. #16
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Tite question subsidiaire...

    affich_graphe2 c'est bien une vue que tu définies dans le urls.py ?
    Si oui, donne ton urls.py.
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  17. #17
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    pas plus de resultats...

    non, ma vue est ecrite dans le module views.py

  18. #18
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Va falloir que tu me donnes des billes par contre.....

    File ton urls.py et ton views.py.
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  19. #19
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 202
    Points : 33
    Points
    33
    Par défaut
    voila le lien ou j'ai mis views.py et urls.py

    http://pastebin.com/Nv26HH4j

  20. #20
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Comme je l'avais suggéré plus haut, si tu sors ton return et tes httpresponse et render_to_response du try except, ça sera plus propre déjà.

    Ensuite, si tu utilises la fonction HttpResponse au lieu de render_to_response comme plus haut ça donne quoi ?

    Après j'ai épuisé toutes mes cartouches...
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

Discussions similaires

  1. Java et les exceptions (message d'erreur)
    Par Khalfe dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 29/09/2013, 18h35
  2. exception message erreur
    Par pat100 dans le forum Django
    Réponses: 0
    Dernier message: 24/04/2013, 09h51
  3. Réponses: 6
    Dernier message: 07/04/2011, 10h57
  4. Réponses: 7
    Dernier message: 03/10/2008, 20h16
  5. message erreur exception logicielle
    Par bertrand_declerck dans le forum Delphi
    Réponses: 2
    Dernier message: 25/09/2006, 19h49

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