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 :

passer des info (une liste d'objets) de page en page


Sujet :

Django Python

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 40
    Points : 30
    Points
    30
    Par défaut passer des info (une liste d'objets) de page en page
    Bonjour,

    Sur mon site je liste les fichiers dans certain dossiers que j'ai enregistrés dans un models.
    L'utilisateur a la possibilité de se balader à travers les dossiers comme sur un ftp.
    Je récupère la liste des dossiers avec un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    folderList = MainFolder.objects.all()
    for obj in folderList:
       something(obj.path)
    seulement je ne veux pas que l'utilisateur connaisse le chemin complet mais seulement à partir du dernier dossier.
    Si j'ai un dossier '/home/user1/dossier1' et '/home/user2/dossier2' je veux que l'utilisateur ne voie que 'dossier1' et 'dossier2'.

    Je peux facilement isoler le dernier dossier avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    os.path.basename(obj.path)
    pour avoir une url du style http://monsite.com/files/dossier1 seulement j'ai besoin de passer le chemin complet pour savoir quoi lister quand il va dans http://monsite.com/files/dossier1/sousdossier

    Comment puis-je passer ma 'foldertList' de page en page sans que l'utilisateur ne s'en rende compte ?
    merci

    edit : après réflexion je n'ai pas vraiment besoin de ça dans ce cas-ci mais ça peut toujours être utile. Comment faire pour passer des objets comme en php avec serialize ?

  2. #2
    Membre éprouvé

    Homme Profil pro
    Diverses et multiples
    Inscrit en
    Mai 2008
    Messages
    662
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Diverses et multiples

    Informations forums :
    Inscription : Mai 2008
    Messages : 662
    Points : 1 273
    Points
    1 273
    Par défaut
    Pour info, l’équivalent de serialize() en PHP me semble être le module pickle (et sa version optimisée cPickle):

    pickle.dumps(object) pour obtenir une string sérialisée de l’objet, et
    pickle.loads(str) pour obtenir l’objet à partir de sa chaîne sérialisée

    Attention, tous les objets ne sont pas forcément sérialisables (on dit “pickleable” en python ).

    A+

    Bastien

  3. #3
    Membre expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    Par défaut
    bonjour,

    as-tu essayé de passer tes infos par les sessions dans tes vues:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    def vue1(request):
        request.session['path'] = '/path/vers/mon/dossier'
     
    def vue2(request):
         path = request.session.get('path', False)
         if path:
            ....
    "Etre conscient de la difficulté permet de l'éviter.."
    Lao-Tseu.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 40
    Points : 30
    Points
    30
    Par défaut
    merci de ta réponse (un peu tardive) mais je me suis débrouillé

    dans une base de donnée j'enregistre tous les dossiers que je mets à disposition.
    par exemple
    {'name':'mes images'; 'path':'/home/user/photo'}
    {'name':'mes musiques'; 'path':'/home/user/music'}
    {'name':'mon lecteur cd'; 'path':'/media/cdrom'}

    et l'utilisateur "à la racine" du site, ne voit que 3 dossiers : mes images, mes musiques et mon lecteur cd. Après en sachant sur lequel il est, il est facile d'aller rechercher le path complet

Discussions similaires

  1. [Débuter] Passer une liste d'objets de Qt à QML
    Par boumacmilan dans le forum Qt Quick
    Réponses: 3
    Dernier message: 13/12/2011, 08h23
  2. problème de récupération d'une liste d'objet au niveau des DAO
    Par yness dans le forum Persistance des données
    Réponses: 1
    Dernier message: 25/04/2011, 19h57
  3. Passer des infos de ma Servlet a une JSP
    Par Slyders dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 05/08/2008, 16h54
  4. Trier une liste d'objets d'après un champ des objets
    Par gids01 dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 02/07/2007, 09h52
  5. Passer des infos d'une zone de liste à une autre
    Par Rinecka dans le forum Access
    Réponses: 1
    Dernier message: 09/01/2006, 11h59

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