mongoose的使用

mongoose介绍:mongoose是一个操作mongoDB数据库的一个工具,可以通过npm安装,mongoose会在数据库真正链接之前就缓存所有命令,也就是说建立模型、执行查询时不用确认数据库链接是否成功,只要链接成功这些命令都会自动执行

链接

// 下面两种方法都可以
mongoose.connect(uri, options);
mongoose.createConnection(uri, options);

两种方法区别:
官方解释:当你需要操纵多个数据库时,且每个连接都具有不同的设置时,使用createConnection

createConnection会直接返回链接对象,connect使用链接对象需要通过mongoose.connection

options参数有:

const options = {
  useMongoClient: true,
  autoIndex: false, // Don't build indexes
  reconnectTries: Number.MAX_VALUE, // Never stop trying to reconnect
  reconnectInterval: 500, // Reconnect every 500ms
  poolSize: 10, // Maintain up to 10 socket connections
  // If not connected, return errors immediately rather than waiting for reconnect
  bufferMaxEntries: 0
};

通过链接对象设置一些监听函数:

mongoose.connection.on('connected', () => {
    console.log('链接成功');
});

定义schema

const userSchema = mongoose.Schema({
    name: { type: String }
});
/** 除了type,还有定义一些其他的一些,比较常用的有默认值,是否必须 */
const userSchema2 = mongoose.Schema({
    name: { 
    type: String,
    required: true,
    default: '123'  // 默认值可以是一个函数,取函数返回值作为默认值
     }
});

还有一些其他的字段,其中有一些针对特定的type官网链接

定义model

mongoose.model('user', userSchema);  // 默认使用我们传入的model名字加字母''s'来定义集合的名称
// 也可以自己定义,一种是在定义schema时添加
mongoose.Schema({
    name: { type: String }
}, {
    collection: 'user'
});

// 另一种是在定义model时添加
mongoose.model('name', userSchema, user);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值