我正在使用mongoose Schemas为我的mongodb创建模型,我想知道是否使用默认值。我知道使用默认值对于createdAt和类似的值是有好处的,但在我的情况下,我有一堆属性的模式,这可能会导致客户端中的大量空指针。我应该使用我的mongoose架构上的默认值来解决这个问题,还是应该在客户端,甚至nodejs处理这个问题?
答案 0 :(得分:1)
我的答案就是避免在架构字段未使用时使用默认值。在我的生产Node / Mongo / Mongoose应用程序中,有很多要点可以帮助我们制定一个好的策略:
在前端,没有值但需要默认值的字段可以很容易地处理 - 深度为1级的属性:
var someField = myMongoDoc.attrWithoutDefault || 'default value';
嵌套的属性(例如myMongoDoc.attr1.subAttr1)可以使用像lodash这样的库进行测试(参见https://lodash.com/docs#get)