MongoDB - 限制相关模型中的记录数

时间:2018-04-19 09:31:11

标签: node.js mongodb mongoose-schema

我刚刚开始学习Node和MongoDB,我正在为我的婚礼构建一个应用程序以试用这些技术。

部分申请将侧重于将客人分配到婚礼早餐的桌子。到目前为止,我有一个像这样的Guest模式:

const guestSchema = new mongoose.Schema({
  firstname: {
    type: String,
    trim: true,
  },
  surname: {
    type: String,
    trim: true,
  },
  attending: String,
  allergies: String,
  menu: String
});

const tableSchema = new mongoose.Schema({
  name: String,
  capacity: Number,
  **guests: [
      { type: mongoose.Schema.ObjectId, ref: 'Guest' }
  ]**

我知道我可以在客人和牌桌之间建立关系,如粗体所示,但我想限制相关的数量。客人根据桌子的容量来一张桌子。例如 - tableOne可能有5个人,tableTwo可能有7个,等等。我知道我可以在Node中通过使用我的容量字段并在将客户关联到表之前执行查询来执行此操作,但我想知道是否有在数据库方面这样做的方式,因为我想这会更好的做法?

欢迎所有的想法,

由于

0 个答案:

没有答案