Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.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
Javascript Node.js+;续集+;特快专递_Javascript_Node.js_Transactions_Sequelize.js_Acid - Fatal编程技术网

Javascript Node.js+;续集+;特快专递

Javascript Node.js+;续集+;特快专递,javascript,node.js,transactions,sequelize.js,acid,Javascript,Node.js,Transactions,Sequelize.js,Acid,Hy,我对nodejs和sequelize world还不熟悉(来自java+spring)。 我有一个问题,关于如何在nodejs和sequelize中使用事务。我可以使其与控制器中的事务一起工作,并使用延续本地存储模块,类似于: router.post('/client/new', function (req, res, next) { models.sequelize.transaction({ autocommit: false }, function (

Hy,我对nodejs和sequelize world还不熟悉(来自java+spring)。 我有一个问题,关于如何在nodejs和sequelize中使用事务。我可以使其与控制器中的事务一起工作,并使用延续本地存储模块,类似于:

router.post('/client/new', function (req, res, next) {
    models.sequelize.transaction({
        autocommit: false
    }, function (t) {
        function insertClient(company) {
            var body = _.extend({}, req.body);
            body.id_company = company.id;
            return models.Client.create(body);
        }

        return models.Company.find({
            where: {
                id: req.body.company.id
            }
        }).then(function (company) {
            if (company) {
                return insertClient(company);
            } else {
                return models.Company.create(nome: req.body.company).then(function (company) {
                    return insertClient(company);
                });
            }
        });
    }).then(function (client) {
        return res.json({
            client: client
        });
    }).catch(function (err) {
        next(err);
    });
});
但是这种方式有一个问题,如果客户端连接在下载主体时中止,那么提交已经完成。当请求完成时,我有什么办法可以这样做吗?或者最好的方法是什么? 有没有其他REST或ORM框架可以做类似的事情?(请求完成时提交)


感谢您的时间和耐心。

IMHO,-make REST API的最佳选择。它还有内置的杂耍器ORM,我会看看,谢谢你,这是制作RESTAPI的最佳选择。它还有内置的杂耍器,我会看看的,谢谢你