Je pense que la meilleure façon n'est pas définie car je suggérerais de ne pas inclure complètement cette clé. Mongo ne fonctionne pas comme SQL, où vous devez avoir au moins null dans chaque colonne. Si vous n'avez pas de valeur, n'incluez tout simplement pas la clé. Ensuite, si vous effectuez une requête pour tous les documents, là où cette clé n'existe pas, elle fonctionnera correctement, sinon non. De plus, si vous n'utilisez pas la clé, vous économisez un peu d'espace disque. Faites ceci est la bonne manière en mongo.
function deleteEmpty (v) {
if(v==null){
return undefined;
}
return v;
}
var UserSchema = new Schema({
email: { type: String, set: deleteEmpty }
});