我正在将应用程序从MySQL迁移到运行在Express上的Node / Mongoose。目前在我的LAMP堆栈中,我在几个表中有一个“account_id”列,并且根据会话中的“活动帐户”,系统会根据account_id自动查询。显然我可以在我的新设置中做同样的事情,但看到我一般都是Node,Mongoose和NoSQL的新手,我想知道是否有更好的方法来实现这一新技术。
我在想:
1)使用多个数据库(但我无法弄清楚如何从会话中确定数据库,除非我在每个请求中单独连接到数据库)
2)为集合名称添加前缀,但是我必须在每个请求上重建mongoose.model对象,我想这不会那么糟糕。
这些和其他解决方案的成本和收益是什么?
答案 0 :(得分:0)
我要做的是拥有一个用户模型并将其连接到项目的其他模型,如下所示:
mongoose.model('User', new Schema({
name: String,
email: String,
}))
mongoose.model('Other', new Schema({
user: {type: ObjectId, ref: 'User'},
name: String,
}))
它与MySQL数据库应该没什么不同。