我想要的是将架构中的特定字段设置为包含项目的数组。
当我创建有问题的文档时,我将没有任何数组项。因此,我希望我的文档看起来像这样:
{
notes: []
}
问题是,我得到一个看起来像这样的数组:
{
notes: ['']
}
查询notes.length
时,我得到1,这对我来说是个问题,因为它本质上是一个空数组项。
这是我正在使用的代码:
const SubDocumentSchema = function () {
return new mongoose.Schema({
content: {
type: String,
trim: true
},
date: {
type: Date,
default: Date.now
}
})
}
const DocumentSchema = new mongoose.Schema({
notes: {
type: [SubDocumentSchema()]
}
});
const Document = mongooseConnection.model('DocumentSchema', DocumentSchema)
const t = new Document()
t.save()
答案 0 :(得分:2)
您可以将空数组指定为注释的默认值。而且您不需要为SubDocumentSchema返回一个函数。尝试下面的代码。
df[] <- lapply(df, function(x) {
return(colnames(df)[x])
})