mon goose схема компании с пользователями в качестве сотрудников, как обращаться с незарегистрированными пользователями? - PullRequest
0 голосов
/ 11 января 2020

Я создаю API в express. Я хотел бы, чтобы пользователь имел возможность зарегистрироваться и добавить компанию, после того как компания будет создана, я хотел бы дать пользователю возможность добавлять сотрудников, которые будут иметь доступ ко всей информации, связанной с компанией, например, к продуктам, предлагаемым компания. У меня есть следующая схема:

const companySchema = mongoose.Schema({
  slug: String,
  address: Object,
  name: String,
  phone: String,
  website: String,
  admins: [{ type: mongoose.Schema.Types.ObjectId, ref: "User" }],
  clients: [{ type: mongoose.Schema.Types.ObjectId, ref: "Company" }],
  employees: [{ type: mongoose.Schema.Types.ObjectId, ref: "User" }],
  products: {
    sells: [{ type: mongoose.Schema.Types.ObjectId, ref: "Product" }],
    buys: [{ type: mongoose.Schema.Types.ObjectId, ref: "Product" }]
  }
})

Это будет работать, когда сотрудник уже доступен в коллекции User. Когда сотрудник входит в систему, я могу подтвердить, что его _id существует в столбце сотрудников, и это также дает дополнительное преимущество возможности вызова populate для компании.

Но как мне обращаться с пользователями, которые не являются в настоящее время зарегистрированы? Я хотел бы попросить пользователя, создающего компанию, добавить адреса электронной почты сотрудников. Должен ли я хранить это в свойстве unregisteredEmployees в схеме компании и когда пользователь входит в систему, обновляет запись сотрудников?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...