Tiven

Tiven

博观而约取,厚积而薄发

天问的个人网站(天问博客),专注于Node.js、Vue.js、React、Vite、Npm、Nginx等大前端技术。不断学习新技术,记录日常开发问题,持续分享coding,极客开源,共同进步。生命不息,奋斗不止... [ hexo blog ]

mongoose常见错误(一)


mongoose是一个将js对象与数据库产生关系的一个框架,让传统的直接操作数据库变成操作对象,从而间接的操作数据库。

Image

<!--more-->

  • mongoose操作流程:创建类——>实例化类——>调用类方法。 下面请看一个具体事例:
var mongoose = require('mongoose');
// 连接数据库
mongoose.connect('mongodb://localhost/test');// test :是数据库名字 connections
// 创建了一个模型(相当于创建了一个“类”) ,People的模型。所有的People,都有名字,是字符串类型,
var People = mongoose.model('People',{name:String});
// 实例化一个People
var tiven = new People({name:'Tiven'});
// 调用这个People的save方法,保存这个人
tiven.save(function(err){
    console.log('连接成功');
});

当你运行之后往往会出现这样的警告:

    (node:3800) DeprecationWarning: Mongoose: mpromise (mongoose's default promise library) is deprecated,
    plug in your own promise library instead: http://mongoosejs.com/docs/promises.html

如果你是一个追求完美主义的程序猿,看到这样的警告或者报错,心里肯定很不爽,必会寻求解决办法。 出现这个警告的原因是:因为mongoose在4.1版本后,mpromise(默认库)被弃用,需要为mongoose提供一个全局的Promise。 所以要在连接数据库前要加入:

    mongoose.Promise = global.Promise;

此处仅限解决出现警告的问题,如果要弄清楚其中缘由,请移步mongoose官网查看具体API。


  • 参考博文:http://www.cnblogs.com/jay--zhang/p/5911667.html

欢迎访问:个人博客地址