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

NodeJS Discussion :

Mongoose Faire un tableau dynamique


Sujet :

NodeJS

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2014
    Messages : 53
    Points : 30
    Points
    30
    Par défaut Mongoose Faire un tableau dynamique
    Bonjour,

    J'utilise le module Mongoose de Node.js, j'ai donc créer un schéma qui ressemble à ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var MembreSchema = new mongoose.Schema({
      pseudo : {type: String, unique: true},
      motdepasse : String,
      email: { type: String, unique: true, lowercase: true },
      role: { type: String, lowercase: true },
      statut : String,
     friend_pseudo : {type: Array, "default" : []},
    friend_statut : [{ type: Array, "default" : []}],
    });
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ug.add_friend = function (membre) {
    ug.set_MembreModel.findOneAndUpdate({pseudo : membre.pseudo },{friend_pseudo : membre.friend_pseudo}, function (e, d) {
            if (e) util.log("ERROR" + " - Impossible d'ajouter cet ami ");
            else {
                    //util.log("INFO" + " - L'ami est bien ajouté " + util.inspect(d));
                    util.log("INFO" + " - L'ami est bien ajouté " + d.friend_pseudo);
            }
        });

    avec var ug= {} et set_MembreModel est juste un setter sur le modele crée.

    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    je pense que tout ça est grandement incomplet pour comprendre quoi que ce soit mais
    ug= {} et ug.set_MembreModel.findOneAndUpdate(...) il manque quelque part la définition de set_MembreModelcar dans l'appel ug.set_MembreModel.findOneAndUpdate(...) le membre set_MembreModel est un objet qui possède lui même une méthode findOneAndUpdate.

    il faut donc à un moment ou un autre définir cet objet et cette méthode avant de l'utiliser.

    A+JYT

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2014
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    Bonjour,
    Merci de la réponse. J'ai bien déclaré cet objet comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ug.set_MembreModel = function (o) { // setter de mon model
        ug.set_MembreModel = o;
    };

  4. #4
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2014
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    Et voici la fonction add_friend dans mon routeur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
     
    add_friend:
        function (pseudo,friend_pseudo) {
            var membre = {pseudo: pseudo,friend_pseudo : friend_pseudo};
            db.add_friend(membre);
     
    }
    et elle est appeler avec l'url comme ci-dessous:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
     }else if (this.path== "/add_friend") {
                this.add_friend(this.query.pseudo,this.query.friend_pseudo);

  5. #5
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Citation Envoyé par sabrinouch Voir le message
    Bonjour,
    Merci de la réponse. J'ai bien déclaré cet objet comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ug.set_MembreModel = function (o) { // setter de mon model
        ug.set_MembreModel = o;
    };
    ça ne change en rien qu'avec ce que tu poste on ne sait pas ce qu'est
    ug.set_MembreModel
    soit c'est juste le code que tu vien de poster et c'est une fonction et donc ce n'est pas un objet qui possède un membre findOneAndUpdate

    soit tu appelle cette fonction et set_MembreModel et remplacé par l'objet que tu passe en parramètre
    et comme on n'a pas le code on ne sais pas ce que c'est

    de plus je trouve la syntaxe de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ug.set_MembreModel = function (o) { // setter de mon model
        ug.set_MembreModel = o;
    };
    douteuse.
    en effet tu utilise la notation pointé pour faire une fonction qui agit sur un objet en dur
    c'est très étrange. de plus c'est un sétter qui s'auto détruit

    je ne sais pas pourquoi des choisX aussi complexe.

    toujours est-il que pourque ton appel ug.set_MembreModel.findOneAndUpdate()
    fonctionne il faut que set_MembreModel soit un objet et pas une fonction et qu'en plus il posède la méthode findOneAndUpdate
    A+JYT

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2014
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    C'est une méthode donnée par mon professeur, on fait un setter sur le modèle pour ne pas avoir à la redéclarer dans chaque fonction car j'ai plusieurs .js : un pour la base, l'autre pour le routeur, le serveur et le membre_guest pour le corps de mes fonctions. Cependant, je n'ai pas eu d'erreur sur l'objet set_MembreModel, il accepte tout à fait les méthodes find.

Discussions similaires

  1. [XL-2010] Faire un tableau dynamique croisé avec du texte
    Par PaulG2B dans le forum Excel
    Réponses: 5
    Dernier message: 17/04/2014, 16h32
  2. Faire un tableau dynamique
    Par flokent7 dans le forum Langage
    Réponses: 32
    Dernier message: 16/08/2012, 11h34
  3. [E-03][Vba]faire une case totaux dans un tableau dynamique
    Par Overcrash dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/06/2008, 11h39
  4. Comment faire un tableau dynamique ?
    Par Nico128 dans le forum WinDev
    Réponses: 3
    Dernier message: 18/03/2008, 11h13

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