介绍
bus-mongo 是一款基于 MongoDB 的 Node.js ORM 库,旨在为 Node.js 应用提供更方便和快速的数据存储操作。在使用 bus-mongo 之前,你需要先安装 MongoDB 并建立相应的数据库和集合。
安装
使用 npm 安装 bus-mongo:
npm install bus-mongo --save
使用
连接数据库
const { MongoClient } = require('mongodb'); const { MongoDatabase } = require('bus-mongo'); const mongoUrl = 'mongodb://localhost:27017'; const client = await MongoClient.connect(mongoUrl); const db = new MongoDatabase(client.db('test'));
定义 Model
const { Schema, Model } = require('bus-mongo'); const UserSchema = new Schema({ name: 'string', age: 'number', }); const User = new Model('users', UserSchema);
基本查询
查找记录
const users = await User.find(); const user = await User.findOne({ name: 'Amy' });
插入记录
const user = await User.create({ name: 'Tom', age: 18 });
更新记录
const user = await User.findOne({ name: 'Tom' }); user.age = 20; await user.save();
删除记录
const user = await User.findOne({ name: 'Tom' }); await user.remove();
高级查询
条件查询
const users = await User.find({ age: { $gt: 18 } }); const user = await User.findOne({ name: { $ne: 'Tom' }, age: { $lte: 20 } });
排序查询
const users = await User.find().sort({ age: -1 });
分页查询
const users = await User.find().limit(10).skip(20);
聚合查询
const result = await User.aggregate([ { $group: { _id: '$name', totalAge: { $sum: '$age' } } } ]);
总结
bus-mongo 提供了便捷和高效的 MongoDB ORM 操作,它可以帮助我们更加灵活和方便地进行数据存储操作。我们可以利用 bus-mongo 构建一个更加高效和可靠的 Node.js 应用。
参考链接
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066c8fccdc64669dde57d9