Как разрешить значения в модели в зависимости от значений в другой модели? - PullRequest
0 голосов
/ 04 мая 2020

Я создаю express.js сервер и использую mongoose модели для обработки моих данных.

Я пришел из реляционной базы данных, так что я могу думать об этом все неправильно, но я хочу создать в моих моделях отношения, которые позволят мне разрешить только определенные значения в указанном поле c на основе данных из другой модели.

Например, у меня есть модель Patient, которая "принадлежит «модель User, в том смысле, что у пользовательских объектов есть поле с именем therapist_id (терапевт - это тип пользователя) - отношение один ко многим. Когда я создаю запись Patient, я хочу сначала убедиться, что therapist_id содержит значение, которое фактически существует в качестве значения User id в моей БД.

Я не смог найти источники это может помочь мне достичь этого.

Это мои модели:

Пользователь

const userSchema = mongoose.Schema({
  __id: mongoose.Schema.ObjectId,
  full_name: {type: String, required: true},
  email: {type: String, required: true, unique: true},
  password: {type: String, required: true},
  role: {type: String, required: true},
  registered_at: {type: Date, default: Date.now}
});

Пациент

const patientSchema = mongoose.Schema({
  __id: mongoose.Schema.ObjectId,
  full_name: {type: String, required: true},
  personal_id: {type: Number, required: true, unique: true},
  therapist_id: {type: mongoose.Schema.ObjectId, required: true},
  registered_at: {type: Date, default: Date.now}
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...