マングースでのクエリに問題があります。アドバイスを探しています。
要素が配列内にある場合は、コレクションからいくつかの要素を取得する必要があります。説明するのは難しいですが、これが取引です:現在のユーザーが受信者の中にいる場合はメッセージを受け取る必要があります
var Message = new Schema({
recipients: [{
pseudo: {type: String},
slug: {type: String, index: true}
}],
sender: {
pseudo: {type: String},
slug: {type: String, index: true}
},
content: String,
dateCreated: {type: Date, default: Date.now},
readBy: [{
pseudo: String,
slug: String,
date: Date
}]
});
同様に、未読メッセージをチェックするときに、ユーザーがreadBy配列に含まれていない場合は、いくつかのメッセージを取得する必要があります。
$ in演算子の使用方法は知っていますが、逆に機能します。この種のクエリを実行することは可能ですか?
編集:$ elemMatch演算子について知りました。最初の問題では問題なく動作しますが、未読メッセージにどのように使用するかわかりません。そこにNOT句を追加することは可能ですか?