我在nodejs中使用mongoose,我正在寻找一些关于MongoDB架构的建议,有两种类型的用户:员工和客户端,他们都会使用相同的注册页面(我使用的是护照)认证)。
我正在考虑使用一个通用帐户模型(针对员工和客户),其中包含一些共同的内容,如电子邮件,通行证,姓名等,然后在员工和客户模型中嵌入帐户谢玛。
我不确定这是否是正确的方法,所以任何建议都会非常感激。
谢谢。
答案 0 :(得分:0)
由于employee
和client
都有许多常见属性,并且几乎没有专门的属性。所以,恕我直言,为它们制作单一架构会更好。
var Person = new Schema({
type: String,
// common properties below
email: String,
dob: String,
// props of employee
joiningDate: Date,
// props of client
account: { type: Schema.Types.Mixed }
});
在此,您可以根据Client
Employee
和type