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 :

Parcourir les données un QuerySet. [Python 3.X]


Sujet :

Django Python

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2016
    Messages : 98
    Par défaut Parcourir les données un QuerySet.
    Bonjour. J'espère que vous allez bien.
    Je développe une app django mais depuis quelques jours je bloque sur quelque chose.
    J'ai un modèle Personne contenant des champs relatifs à une personne. Maintenant j'aimerais faire une itération sur un cet objet Personne.objet.get(pk=1).
    Django me dit que cet objet n'est pas iterable. Je voudrais savoir si il y a une alternative à ça. Merci.
    Désolé si j'ai pas trop détaillé mon code, j'écris avec smartphone, c'est un peu pénible d'écrire des codes dessus.

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

    Citation Envoyé par parice02 Voir le message
    Maintenant j'aimerais faire une itération sur un cet objet Personne.objet.get(pk=1).
    Relisez la documentation . Elle vous explique qu'un .get(...) retourne une seule entry ou lèvera une exception s'il y a 0 ou plusieurs entries et que pour récupérer un itérable, il faut utiliser .filter (par exemple).

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

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2016
    Messages : 98
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,



    Relisez la documentation . Elle vous explique qu'un .get(...) retourne une seule entry ou lèvera une exception s'il y a 0 ou plusieurs entries et que pour récupérer un itérable, il faut utiliser .filter (par exemple).

    - W
    Bonjour. J'ai lu la documentation. Et ce que vous dites n'est pas ce que je veux faire. En effet, avec p = Personne.objets.get(pk=1), je fais une requête dans la base de données. Mon objet p contient les données sur un enregistrement de ma base de données. Et moi je veux lire les valeurs de chaque attribut.

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

    Citation Envoyé par parice02 Voir le message
    Et moi je veux lire les valeurs de chaque attribut.
    Soit vous connaissez un peu la POO avec Python et c'est évident (quitte à vous replonger dans votre tuto.favori aux chapitres correspondants), soit c'est plus compliqué mais dans ce cas je ne comprends pas ce que vous voulez et donc je ne peux pas aider.

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

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2016
    Messages : 98
    Par défaut Résolu
    Citation Envoyé par parice02 Voir le message
    Bonjour. J'espère que vous allez bien.
    Je développe une app django mais depuis quelques jours je bloque sur quelque chose.
    J'ai un modèle Personne contenant des champs relatifs à une personne. Maintenant j'aimerais faire une itération sur un cet objet Personne.objet.get(pk=1).
    Django me dit que cet objet n'est pas iterable. Je voudrais savoir si il y a une alternative à ça. Merci.
    Désolé si j'ai pas trop détaillé mon code, j'écris avec smartphone, c'est un peu pénible d'écrire des codes dessus.
    J'ai trouvé une alternative. Avec django.db.connection, je fais la requête directement en SQL. Grâce à une fonction proposée par la doc officielle de django dans la section parlant de django.db.connection,j'ai une liste de dictionnaire où chaque clé correspond au nom d'un champ de la table. Avec çà, il est plus aisé de faire une itération.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/12/2016, 16h14
  2. Parcourir les données de la base
    Par tunis71187 dans le forum Agents de placement/Fenêtres
    Réponses: 6
    Dernier message: 10/09/2012, 09h53
  3. parcourir les donnée json
    Par diengkals dans le forum Android
    Réponses: 0
    Dernier message: 18/04/2011, 19h02
  4. Parcourir les données dans analysis manager
    Par killua86 dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 19/02/2010, 19h04
  5. [Débutant] Parcourir les données de plusieurs tables.
    Par SmokE dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 13/01/2006, 16h55

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