【发布时间】:2013-11-14 18:13:21
【问题描述】:
Mongoose 似乎默认使所有字段都不需要。有没有办法在不更改每个字段的情况下使所有字段成为必需的:
Dimension = mongoose.Schema(
name: String
value: String
)
到
Dimension = mongoose.Schema(
name:
type: String
required: true
value:
type: String
required: true
)
因为我有很多,它会变得非常难看。
【问题讨论】:
-
如果所有字段都需要,为什么要使用无模式数据库?
-
无模式数据库与必填字段无关,您可以在关系数据库中使用非必填字段,反之亦然。 (在我看来)
-
我觉得这应该是api的一部分。也就是说,在构建 Schema 时将 this 作为选项传递给构造函数。奇怪的是它不存在,并且提供聚合它们的解决方案非常难看。可能最干净的方法是用装饰器包装 mongoose.Schema 并自己构建这个构造函数。
标签: node.js mongodb mongoose schema