1
複数の参照を削除するという質問が1つあります。私は3つのスキーマモデル - >イベント、投稿、コメントを持っています。イベントは、ポストへの参照(一対多)およびコメントへのポストストア参照(一対多)を格納します。複数の参照を削除する
イベントスキーマ
const mongoose = require('mongoose'),
Schema = mongoose.Schema,
ObjectId = mongoose.Schema.Types.ObjectId;
const EventSchema = new Schema({
organizer: {
type: ObjectId,
required: true,
},
date: {
start: {
type: Date,
required: true,
},
end: {
type: Date,
required: true,
},
},
name: {
type: String,
required: true,
},
description: {
type: String,
required: true,
},
category: {
type: String,
required: true,
},
posts: [{
type: ObjectId,
ref: 'Post',
}],
});
module.exports = mongoose.model('Event', EventSchema);
ポストスキーマ
const mongoose = require('mongoose'),
Schema = mongoose.Schema,
ObjectId = mongoose.Schema.Types.ObjectId;
const PostSchema = new Schema({
author: {
type: String,
required: true,
},
date: {
type: Date,
default: Date.now(),
required: true,
},
content: {
type: String,
required: true,
},
comments: [{
type: ObjectId,
ref: 'Comment',
}],
});
module.exports = mongoose.model('Post', PostSchema);
コメントスキーマ
const mongoose = require('mongoose'),
Schema = mongoose.Schema,
ObjectId = mongoose.Schema.Types.ObjectId;
const CommentSchema = new Schema({
author: {
name: {
type: String,
required: true,
},
id: {
type: ObjectId,
required: true,
},
},
date: {
type: Date,
default: Date.now(),
},
content: {
type: String,
required: true,
},
});
module.exports = mongoose.model('Comment', CommentSchema);
今この状況を見てください:イベントを削除していますので、投稿(簡単)と関連するコメント(アップ)も削除する必要があります。ここで私の問題です:どのように簡単に彼のすべての参照(イベントを削除すると自動的にこの記事への投稿と関連するコメントを削除する)イベントを削除することができますか?私は本当に何も考えていない。手伝ってくれてありがとう!