NodeJs Mongoose传递参数以发布findOneAndUpdate

时间:2017-05-01 15:14:00

标签: node.js mongodb express mongoose middleware

我想使用post findOneAndUpdate中间件来保存我所有猫鼬模型更改的日志数据。

  
    

我在三个地方使用findOneAndUpdate:

  
 - Update Model's data
 - change Model status
 - archive / restore Model

所以当我使用postOneAndUpdate中间件后,我想知道三个findOneAndUpdate中的一个被执行了。

有没有办法将参数从findOneAndUpdate传递到postOneAndUpdate中间件。?

有我的代码:

控制器:invoices.js

    update: function (request, response, next) {
    //checking general invoice information
    request.checkBody(typeValidationSchema);
    request.getValidationResult().then(function(result) {
        if (!result.isEmpty()) return response.apiError(result.array());
        else {
            Invoice.findOneAndUpdate({
                _id: request.params.invoiceId,
                createdBy: request.user._id
            }, request.body, {'new': true, 'runValidators': true}).exec(function (error, invoice) {
                if (error) response.apiError(error);
                if (!invoice) return response.apiNotFound();
                else return response.apiResponse(invoice);
            });
        }
    });
},

模型架构:invoice.js

InvoiceSchema.post('findOneAndUpdate', function(doc) {
// I want to get her some variables passed from controller findOneAndUpdate
});

0 个答案:

没有答案