मुझे लगता है कि सबसे अच्छा तरीका अपरिभाषित है क्योंकि मैं सुझाव दूंगा कि इस कुंजी को पूरी तरह से शामिल न करें। मोंगो एसक्यूएल के रूप में काम नहीं करता है, जहां आपको प्रत्येक कॉलम में कम से कम शून्य होना चाहिए। यदि आपके पास मूल्य नहीं है, तो बस कुंजी शामिल न करें। फिर यदि आप सभी दस्तावेजों के लिए पूछताछ करते हैं, जहां यह कुंजी मौजूद नहीं है, तो यह सही ढंग से काम करेगा, अन्यथा नहीं। इसके अलावा यदि आप कुंजी का उपयोग नहीं करते हैं तो आप थोड़ा सा डिस्क स्थान बचाते हैं। क्या Mongo में यह सही तरीका है।
function deleteEmpty (v) {
if(v==null){
return undefined;
}
return v;
}
var UserSchema = new Schema({
email: { type: String, set: deleteEmpty }
});