我最近开始使用mongoDB和mongoose作为我的新node.js应用程序.在我努力适应mongoDB / nosql思维方式(例如非规范化和缺乏外键关系)之前,只使用了关系数据库.我有这个关系数据库设计:
因此,每个大厅属于一个游戏,多个大厅可以属于同一个游戏.用户对于不同的游戏也有不同的分数.到目前为止,对于我的用户架构,我有以下内容:
所以我的问题是,如何将关系设计结构化为mongoDB / mongoose模式?谢谢!
编辑1
我现在尝试创建所有模式,但我不知道这是否是正确的方法.
- var UserSchema = new mongoose.Schema({
- _id: Number,username: {
- type: String,scores: [{ type: Schema.Types.ObjectId,ref: 'score' }]
- });
- var GameSchema = new mongoose.Schema({
- _id: Number,name: String
- });
- var LobbySchema = new mongoose.Schema({
- _id: Number,_game: { type: Number,ref: 'Game' },name: String
- });
- var scoreSchema = new mongoose.Schema({
- _user : { type: Number,ref: 'User' },_game : { type: Number,score: Number
- });