هل تريد طلب ميزة أو الإبلاغ عن خطأ ؟
حشرة
ما هو السلوك الحالي؟
في البرنامج النصي أدناه ، عندما نسحب المستند الأصلي ، نرى أن child
يعود كـ {}
، لكن child2
يعود كـ { field: 'test'}
على الرغم من الحقيقة أن ChildSchema.field
لديه select: false
.
عند النظر إلى مصحح الأخطاء ، يتم تحديد child.field
فقط و child2.field
ليس كذلك.
const mongoose = require('mongoose');
mongoose.connect('mongodb://127.0.0.1/test');
const db = mongoose.connection;
db.once('open', async () => {
try {
const ChildSchema = new mongoose.Schema({
field: {
type: String,
select: false,
},
_id: false,
}, { id: false });
const ParentSchema = new mongoose.Schema({
child: ChildSchema,
child2: ChildSchema,
});
const Parent = mongoose.model('Parent', ParentSchema);
const ogParent = new Parent();
ogParent.child = { field: 'test' };
ogParent.child2 = { field: 'test' };
await ogParent.save();
const foundParent = await Parent.findById(ogParent._id).exec();
console.log(foundParent);
db.close();
} catch (e) {
console.log(e);
}
});
يرجى ذكر إصدار node.js و mongoose و MongoDB.
4.11.8
شكرًا لك على النص الكامل لإعادة العرض ، يبدو هذا وكأنه خطأ
منح wlingke شارة تخيلية لأفضل مكتشف
wlingke ، العثور على كل الحشرات الأكثر دقة في النمس منذ 2014: صاروخ:: 1st_place_medal:
التعليق الأكثر فائدة
wlingke ، العثور على كل الحشرات الأكثر دقة في النمس منذ 2014: صاروخ:: 1st_place_medal: