mongoose-paginate 模块不支持查询运算符

mongoose-paginate module is not supporting query operators

我刚刚意识到 mongoose-paginate 不支持比较查询运算符 https://docs.mongodb.com/manual/reference/operator/query-comparison/

示例:

(created_on: Date)

Post.paginate({
    created_on: {
        gte: new Date('2019-01-01T00:00:00.000Z')
    }
}, {
    page: 2,
    limit: 10,
    sort: {
        created_on: 'desc'
    }
}).then((data) => {
    // do something with docs
});

这将引发错误:

CastError: Cast to date failed for value "{ gte: 2019-01-01T00:00:00.000Z }" at path "created_on" for model "Post"

它似乎将 属性 created_on 与整个对象 {$gte: new Date('2019-01-01T00:00:00.000Z')} 进行了比较,而忽略了运算符 $gte。 在上面的示例中,它尝试将日期与最终抛出转换错误的对象进行比较!

更新

原来是我弄错了,忘记在gte

前加上$符号

我的错,我错了,我在gte

之前忘记了$
Post.paginate({
    created_on: {
        $gte: new Date('2019-01-01T00:00:00.000Z')
    }
}, {
    page: 2,
    limit: 10,
    sort: {
        created_on: 'desc'
    }
}).then((data) => {
    // do something with docs
});