繁体   English   中英

如何填充嵌套在 ZCCADCDEDB567ABAE643E15DCF0974E503Z 中的对象数组中的文档?

[英]How to populate document nested in array of objects in Mongoose?

我想填充成分列表。 是否可以使用填充的成分字段取回数组? 如果我只想要一个 object 和填充成分列表,我该怎么做?

希望你能帮忙:)

我的架构如下所示:

export const RecipeSchema = new Schema({
  name: {
    type: String,
    required: 'Enter a name',
  },
  ingredientsList: [
    {
      ingredient: {
        type: Schema.Types.ObjectId,
        ref: 'Ingredient',
      },
      value: {
        type: Number,
        default: 1,
      },
    },
  ],
});

我的成分 Model 看起来像这样:

export const IngredientSchema = new Schema({
  name: {
    type: String,
    required: 'Enter a name',
  },

  created_date: {
    type: Date,
    default: Date.now,
  },
  amount: {
    type: Number,
    default: 1,
  },
});

作为字段, ingredientsList是来自Ingredient集合的引用文档数组 - 您可以使用model.populate()如下:

const recipes = await Recipe.find().populate('ingredientsList');

res.send({ data: orders });

这将返回所有Recipes并扩展或填充每个食谱的ingredientsList列表。

假设您只想填充 componentsList 中每个文档的name ingredientsList - 您可以按以下方式进行操作:

const recipes = await Recipe.find().populate('ingredientsList', 'name');

res.send({ data: orders });

这将返回所有Recipes ,但仅填充每个ingredientsListname字段。

Mongoose 文档关于人口

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM