Mongoose快速入門

Schema : 一種以文件形式存儲的數據庫模型骨架,不具有數據庫的操做能力html

Model : 由Schema發佈生成的模型,具備抽象屬性和行爲的數據庫操做對mongodb

Entity : 由Model建立的實體,它的操做也會影響數據庫數據庫

一、安裝驅動npm

npm install --save mongoose

 二、鏈接數據庫mongoose

// mongoose.connect('mongodb://username:password@host:port/database?options...');

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/test');

三、返回數據庫操做對象ui

var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
  // we're connected!
});

四、建立Schemathis

var kittySchema = mongoose.Schema({
  name: String
});

能夠給其添加方法,在實體對象中能夠調用code

kittySchema.methods.speak = function () {
  var greeting = this.name
    ? "Meow name is " + this.name
    : "I don't have a name";
  console.log(greeting);
}

五、發佈模型htm

var Kitten = mongoose.model('Kitten', kittySchema);

由模型new出的實體能夠使用save方法存入數據庫對象

六、建立實體

var fluffy = new Kitten({ name: 'fluffy' });

fluffy.save();

七、查找(經過模型查找)

Kitten.find(function (err, kittens) {
  if (err) return console.error(err);
  console.log(kittens);
})

We just logged all of the kittens in our db to the console. If we want to filter our kittens by name, Mongoose supports MongoDBs rich querying syntax.

Kitten.find({ name: /^fluff/ }, callback);
Kitten.find({ name: ‘fluffy’ }, callback);
相關文章
相關標籤/搜索