Mongoose如果空字符串“”使用默认值

时间:2017-10-07 18:38:04

标签: node.js mongoose mongoose-schema

所以我在我的架构中:

image: {
        type: String,
        default: "http://via.placeholder.com/250x200"
},

因此,当用户未在字段“image”中输入任何内容时,它将返回“”。如何验证空字符串“”是否也应该是默认值?

1 个答案:

答案 0 :(得分:0)

我不知道有任何办法在Mongoose本身处理这个问题,最好的办法是在将该对象传递给模型的构造函数之前,在实例化模型的代码中处理这个问题。

例如,您可以执行以下操作:

const objFromUser = { 'test' : '', 'test2' : 'test2' }
if (!objFromUser.test) delete objFromUser.test
const model = new MyModel(objFromUser)