我有一个如下所示的文档结构:
type Document = {
_id: string
title: string
variants: VariantType[]
}
type VariantType = {
timestamp: Int
active: Boolean
content: any[]
}
我正在尝试根据一个查询中的两个过滤条件来过滤文档。首先,我想匹配_id,然后根据时间戳查找特定变体。
我以前的查询版本是根据active
键进行过滤的。
const updatedDocument = await allDocuments
.findOneAndUpdate({ _id: mongoId, 'variants.active': false }, .... };
将其更改为
const updatedDocument = await allDocuments
.findOneAndUpdate({ _id: mongoId, 'variants.timestamp': timestamp }, .... };
返回null。
mongo甚至可以匹配这样的文档。我看到有一个$eq
查询选择器,但我似乎也无法使它工作。
答案 0 :(得分:0)
结果是我发送给服务器的时间戳有问题。我从错误的地方得到它,但它与任何变体都不匹配。