Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用.sort()查询Mongoose_Mongoose - Fatal编程技术网

如何使用.sort()查询Mongoose

如何使用.sort()查询Mongoose,mongoose,Mongoose,我知道这是一个简单的问题,但在Mongoose4.0.1中,即使使用API文档,我也无法查询我的模型并对结果进行排序 我有一个发票集合,我想找出哪一个是“更好”的发票,具有更高的值(字段总数) 模型: var invoiceSchema = new Schema ({ employee : { type: Schema.Types.ObjectId, ref: 'Employee' }, customer : { type: Schema.Types.ObjectId, ref:

我知道这是一个简单的问题,但在Mongoose4.0.1中,即使使用API文档,我也无法查询我的模型并对结果进行排序

我有一个发票集合,我想找出哪一个是“更好”的发票,具有更高的值(字段总数)

模型:

var invoiceSchema = new Schema ({
    employee : { type: Schema.Types.ObjectId, ref: 'Employee' },
    customer : { type: Schema.Types.ObjectId, ref: 'Customer' },
    products : { type: Schema.Types.ObjectId, ref: 'Product' },
    priced : Number,
    qty : Number,
    total: Number,
    date : Date
});
如何创建发票:

exports.createInv = function (req, res) {
    Invoice.create({
        employee : req.body.employee,
        customer : req.body.customer,
        products  : req.body.products,
        priced : req.body.priced,
        qty : req.body.qty,
        total : req.body.priced*req.body.qty,
        comment : req.body.comment,
        date : req.body.date
    }, function(err) {
    if (err)
        return res.send(err);
    });
}
查询应如下所示:

Invoice
    .find()
    .sort(-total)
    .exec(function(err, inv) {
        if (err) {
            return res.send(err)
        } else {
            res.json(doc);
            console.log(doc);
        }
    })
但它不起作用:)


你能告诉我我做错了什么吗?

排序
采用
字符串
对象

Invoice
.find()
.sort("-total")
.exec(function(err, inv) {
    if (err) {
        return res.send(err)
    } else {
        res.json(doc);
        console.log(doc);
    }
})