【发布时间】:2020-09-15 02:50:47
【问题描述】:
我有一个具有以下文档流程的项目。
用户 -> 帐户 -> 项目
用户
- 用户具有特定的角色
帐户
- 以用户角色为条件的 CRUD
- 特定用户将有权访问个人帐户。我正在考虑添加一个带有用户 ID 的数组 userGroup?
项目
- 嵌套在与单个 accountToken ID 相关的 Accounts 下
- 以用户角色为条件的 CRUD
- 特定用户将有权访问各个项目。
以下是为演示目的而简化的示例模式模型。
UserSchema.js:
const UserSchema = new mongoose.Schema({
email: {
type: String,
required: [true, 'Please add an email'],
unique: true,
},
role: {
type: String,
enum: ['admin', 'user'],
default: 'user'
}
});
module.exports = mongoose.model('User', UserSchema);
AccountSchema.js:
const AccountSchema = new mongoose.Schema({
accountName: {
type: String,
},
accountToken: {
type: String
}
});
module.exports = mongoose.model('Account', AccountSchema);
ProjectSchema.js:
const ProjectSchema = new mongoose.Schema({
projectName: {
type: String,
},
projectType: String,
projectToken: String
})
module.exports = mongoose.model('Project', ProjectSchema);
我被困在设置嵌套或子文档架构关系的最佳方式以及将数据相互关联的最佳方式上。任何指导和建议都会有很大帮助!谢谢!!!
【问题讨论】:
标签: mongodb mongoose database-design schema mongoose-schema