1

Je dois avoir quelques relations entre deux schémas. comme une relation entre l'utilisateur et les commentaires. C'est le code que j'ai essayé.Ajout de realationship avec 2 schémas avec mongoose et mongodb

const user = new Schema({ 
    uname:String, 
    email:String, 
    password:String, 
    created:{ type: Date, default: Date.now } 
}); 

const comment = new Schema({ 
    user:{ 
     type : Schema.Types.ObjectId, 
     ref : 'user' 
    }, 
    comment:String, 
    created:{ type: Date, default: Date.now } 
}); 

Comment dois-je enregistrer les données pour commenter? Dois-je passer l'ID des utilisateurs dont les commentaires? ou puis-je passer une valeur unique (email ou nom d'utilisateur) .Comment transmettre des données et récupérer des données de commentaire? Im assez nouveau pour les bases de données NoSQL.

+0

Voici un exemple de sauvegarde des références: http://mongoosejs.com/docs/populate.html –

Répondre

0

Vous pouvez créer une clé userId dans le schéma du commentaire sous forme de chaîne, userId sera le _id de l'utilisateur (identifiant unique créé au moment de la création de l'instance).

pour chaque création d'instance de commentaire, un userId est passé afin que le commentaire soit associé à cet utilisateur particulier et vous pouvez le trouver (commentaire) en passant userId dans la requête.

permet de dire:

user1 : 
     _id : abc12amcne345ffc 
     uname: 'hello', 
     email: '[email protected]', 
     password: 'acd224', 
     created: somedate 

et commentaires

Comment : 

    userId: ' abc12amcne345ffc ', 
    comment: 'hello', 
    created: somedate 

est une structure simple pour le début je pense.