Actuellement, j’ai une application de nœud qui utilise Mangouste pour enregistrer un object dans un MongoDB. J’utilise un modèle similaire à celui-ci:
var mongoose = require('mongoose') , Schema = mongoose.Schema; var RegistrationSchema = new Schema({ name:{ type: Ssortingng, default: '', sortingm: false} }); mongoose.model('Registration', RegistrationSchema);
Ce qui enregistre mes objects dans une collection appelée inscriptions.
Je sauvegarde mes inscriptions en tant que telles:
var registration = new Registration(data); registration.save(function(err) { if (err) { return callback({ source: 'data_save', type: 'admin', errors: err }); } else { return callback(null, data); } });
J’aimerais également enregistrer ce même object lorsque je le crée dans une autre collection portant un nom différent, tel que registrations_new, ou quelque chose de similaire. Je veux dupliquer cette entrée dans la nouvelle collection. J’ai essayé d’append l’autre collection dans la chaîne de connexion, ce qui a complètement cassé la partie mongo. J’ai essayé de créer un nouveau modèle appelé New_Registration, de charger ce schéma et d’essayer de le sauvegarder individuellement, mais j’ai un autre problème avec cela. Il semble que Mongoose associe le schéma à la collection et qu’il n’ya vraiment aucun moyen de remplacer la collection dans laquelle elle enregistre.
Quelqu’un at-il une solution pour cela?
Vous pouvez utiliser le même schéma dans plusieurs modèles. Ainsi, quelque chose comme ceci fonctionne:
var RegistrationSchema = new Schema({ name:{ type: Ssortingng, default: '', sortingm: false} }); var Registration = mongoose.model('Registration', RegistrationSchema); var New_Registration = mongoose.model('New_Registration', RegistrationSchema); var registration = new Registration(data); registration.save(); var new_registration = new New_Registration(data); new_registration.save();