美文网首页SuperTestman_博客已迁移
Node.JS -- Mongoose 快速入门

Node.JS -- Mongoose 快速入门

作者: 博客已迁移I米阳 | 来源:发表于2018-06-04 13:42 被阅读15次

    Mongoose时一个用于异步环境的MongoDB的对象模型。

    前提条件

    先确保本地已经安装了Node.js和一个可以连接上的MongoDB。

    安装Mongoose

    Mongoose和其他的依赖模块一样安装,使用npm 命令:

    npm install mongoose --save
    

    连接到MongoDB

    // 导入mongoose 模块
    var mongoose = require('mongoose');
    // 设置mongodb 连接地址
    const mongoURL ="mongodb://10.9.77.60:18090/LazyCat";
    // 连接mongodb 设置
    mongoose.connect(mongoURL,{
    });
    
    // 获取连接信息 并输出
    var db = mongoose.connection;
    console.log(db)
    
    // 测试是否连接上
    db.on('error', console.error.bind(console, 'mongodb connection error:'));
    
    db.once('open', function() {
        console.log("mongodb connection success!")
    });
    
    module.exports=mongoose;
    

    定义Schema

    schema是mongoose里会用到的一种数据模式,可以理解为表结构的定义;Mongoose的一切都始于一个Schema。每个schema会映射到mongodb中的一个collection,但是不具备操作数据库的能力。

    var mongoose = require('mongoose');
    
    var Schema = mongoose.Schema;
    
    var userSchema = new Schema({
        name: String,
        password: String
    });
    
    

    创建一个Model

    定义好了Schema,接下就是生成Model。
    Model是由schema生成的模型,而且可以对数据库的进行操作。

    // 创建一个model 'user'是mongoDB中的表名 userSchema 是刚创建的schema
    var user = mongoose.model('user', userSchema);
    

    简单增删改查

    
    // ============select=================
    
    User.find({},function (err,users) {
        if(err) throw err;
        console.log(users);
    });
    
    User.find({name:"vidor"}, function(err, user) {
        if(err) throw err;
    
        console.log("Specify User:");
        console.log(user);
    });
    
    // ============add=================
    
    var a = new User({
        name:"admin2",
        password:"admin2"
    });
    
    a.save(function (err) {
        if(err) throw err;
        console.log('user saved')
    });
    
    // ============update=================
    
    let oldU = {'name':'admin2'};
    let newU = {'name':'adminNew'}
    User.update(oldU,newU,function (err,res) {
        if(err) throw err;
        console.log(res);
    });
    // ============delete=================
    
    User.remove({'name':'admin3'},function (err,res) {
        if(err) throw err;
        console.log(res);
    });
    

    更多帮助:

    官方文档:http://mongoosejs.com/docs/index.html
    欢迎关注个人公众号:

    个人公众号

    相关文章

      网友评论

        本文标题:Node.JS -- Mongoose 快速入门

        本文链接:https://www.haomeiwen.com/subject/rdifsftx.html