Я хочу создать приложение, в котором пользователи могут регистрироваться как «частные» или как «компании», где, если пользователи регистрируются как компании, у них будут другие варианты выбора, например, «пакет 1», «пакет 2»."," пакет 3 "и т. д. Эти дополнительные параметры являются различными" ролями ".
Я думаю о том, какая лучшая практика будет здесь.Я использую MongoDB
, поэтому я должен создать одну «UserSchema», куда я включаю все, или я должен также создать какую-то «RoleSchema»?
Пока у меня есть что-то вроде этого:
User.js:
const UserSchema = new Schema({
name: {
type: String,
required: true
},
email: {
type: String,
required: true
},
password: {
type: String,
required: true
},
roleType: {
type: Schema.Types.ObjectId,
ref: "roles"
}
});
module.exports = User = mongoose.model("users", UserSchema);
Roles.js
const RoleSchema = new Schema({
user: {
type: Schema.Types.ObjectId,
ref: "users"
},
role_name: {
type: String
}
});
module.exports = Roles = mongoose.model("roles", RoleSchema);
Будет ли это хорошим способом или естьвозможно, другие и лучшие способы сделать это?Я вроде новичок в MongoDB
Заранее спасибо