新公司的项目中用了Egg和MongoDB及mongoose。最近有空来系统的梳理一下。
参考资料&扩展阅读:
Egg链接MongoDB
Egg 使用 egg-mongoose来方便的跟数据库进行链接
// eggProject/server/config/config.default.ts
// 单数据库链接
mongoose: {
url: process.env.MONGODB_URL || 'mongodb://127.0.0.1:27017/laurel',
},
// 多数据库链接
mongoose: {
clients: {
// clientId, access the client instance by app.mongooseDB.get('clientId')
// 数据库1
db1: {
url: process.env.MONGODB_URL || 'mongodb://127.0.0.1:27017/db1',
options: {
},
},
// 数据库2
db2: {
url: process.env.MONGODB_URL || 'mongodb://127.0.0.1:27017/db2',
options: {
},
},
},
},
// 多数据库链接时,在model中要指定是哪个
module.exports = app => {
const mongoose = app.mongoose;
const Schema = mongoose.Schema;
const conn = app.mongooseDB.get('db1');
const UserSchema = new Schema({
userName: {
type: String },
password: {
type: String },
});
return conn.model('User', UserSchema);
}
在model中定义schema
export default app