Mongoose がサブドキュメント配列項目に _id プロパティを作成しないようにする 質問する

Mongoose がサブドキュメント配列項目に _id プロパティを作成しないようにする 質問する

サブドキュメント配列がある場合、Mongoose はそれぞれに ID を自動的に作成します。例:

{
    _id: "mainId"
    subDocArray: [
      {
        _id: "unwantedId",
        field: "value"
      },
      {
        _id: "unwantedId",
        field: "value"
      }
    ]
}

配列内のオブジェクトの ID を作成しないように Mongoose に指示する方法はありますか?

ベストアンサー1

簡単です。サブスキーマでこれを定義できます。

var mongoose = require("mongoose");

var subSchema = mongoose.Schema({
    // your subschema content
}, { _id : false });

var schema = mongoose.Schema({
    // schema content
    subSchemaCollection : [subSchema]
});

var model = mongoose.model('tablename', schema);

おすすめ記事