Maison > interface Web > js tutoriel > Tutoriel de base sur l'installation et l'utilisation de Mongoose avec Node.js pour faire fonctionner MongoDB_node.js

Tutoriel de base sur l'installation et l'utilisation de Mongoose avec Node.js pour faire fonctionner MongoDB_node.js

WBOY
Libérer: 2016-05-16 15:12:46
original
1643 Les gens l'ont consulté

Installer la mangouste

Utilisez express pour préparer un projet TestMongoDB. La séquence de commandes est la suivante :

express TestMongoDB
cd TestMongoDB
npm install
Copier après la connexion

Après avoir exécuté la commande ci-dessus, utilisez la commande suivante pour installer Mongoose :

npm install mongoose --save
Copier après la connexion

Cette commande installera Mongoose et l'utilisera comme dépendance du projet, et le pilote MongoDB et les modules d'expression rationnelle dont dépend Mongoose seront également automatiquement installés.

Exemple

En utilisant mongoose, vous pouvez créer une nouvelle base de données, créer une nouvelle collection et effectuer des opérations CRUD sur les documents de la collection. Lors de l'écriture du code, vous pouvez vérifier si les résultats répondent aux attentes par rapport au shell mongo.

Créez un nouveau fichier mongo.js sous TestMongoDB avec le contenu suivant :

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/accounts');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
 console.log('mongoose opened!');
 var userSchema = new mongoose.Schema({
   name:{type: String, unique: true}, 
   password:String
  }, 
  {collection: "accounts"}
  );
 var User = mongoose.model('accounts', userSchema);

 User.findOne({name:"WangEr"}, function(err, doc){
  if(err) console.log(err);
  else console.log(doc.name + ", password - " + doc.password);
 });

 var lisi = new User({name:"LiSi", password:"123456"});
 lisi.save(function(err, doc){
  if(err)console.log(err);
  else console.log(doc.name + ' saved');
 }); 
});

Copier après la connexion

Pour le fichier ci-dessus, exécutez directement la commande "node mongo.js" pour voir l'effet.

Pour utiliser mangouste, demandez d'abord, puis utilisez la méthode connect pour vous connecter à la base de données. connecter le prototype :

connect(uri, options, [callback])
Copier après la connexion

Le format de l'uri est similaire : "mongodb://user:pass@localhost:port/database".

L'objet de connexion de Mongoose définit certains événements, tels que connecté, ouvert, fermé, erreur, etc. Nous pouvons surveiller ces événements.

Dans notre exemple de code, j'ai écouté l'événement open, défini le schéma dans la fonction de rappel et appelé mongoose.model pour compiler le schéma et obtenir l'objet Model. Il convient de noter que le nom de la collection spécifié lors de la définition du schéma doit être cohérent avec le premier paramètre de mongoose.model.

Après avoir obtenu l'objet Modèle, vous pouvez effectuer des opérations telles que l'ajout, la suppression, la modification et la requête. L'objet Model possède des méthodes telles que find(), findOne(), update() et remove(), qui sont similaires à la façon dont nous les utilisons dans le shell mongo. Ces méthodes ont un rappel facultatif Lorsque vous fournissez ces rappels, les résultats de l'exécution vous seront renvoyés via ce rappel. Si vous ne le fournissez pas, ces méthodes renverront un objet Query. Vous pouvez assembler de nouvelles options via Query, puis appeler l'exécutable de Query (rappel) pour soumettre la requête.

J'ai utilisé le rappel au lieu de Query lors de la recherche des fichiers de WangEr dans le code.

L'objet Model possède une méthode Model(doc), qui est utilisée pour construire un document. Lors de la création d'un document Lisi, la méthode save() de cet objet Document peut enregistrer le document dans la base de données.
Opérations de base via mangouste :
1.Ajouté

var obj = new Movie();
obj.title = '标题一';
obj.content = '内容';
obj.save(function(err) {
  
});
Copier après la connexion

2. Supprimer

Movie.remove({
  _id:id
},function (err) {
  
})
Copier après la connexion


3. Changer

Movie.update({
  _id:id
},json,{},function (err) {
  
})
Copier après la connexion


4. Vérifiez

Movie.findOne({
  _id: id
}, function(err, obj) {
 
});
Movie.find({}).sort({_id: -1}).limit(3).exec(function(err, obj) {
 
})
Copier après la connexion

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal