2014-02-06 109 views
2

您好!有問題關於續集js和交易。 所以我想要做的是嵌套插入和提交成功,回滾,否則這裏是一個片段,由於某種原因我不適合工作。Sequelize.js交易未回滾

sequelize() 
    .transaction(function(t){ 
     myModel 
      .create({ 
       name: 'shawn; 
      }, {transaction: t}) 
      .success(function(newModel) { 
       myModel 
        .create({ 
         name: 'shawn; 
        }, {transaction: t}) 
        .success(function(newModel) { t.commit()}) 
        .error(function(err) {t.rollback()}) 
      } 
      .error(function(err) {t.rollback()}); 
     }); 

不介意任何語法錯誤我正在尋找調試的邏輯。當我用回滾替換成功提交語句時,出現問題,我沒有得到2插入行回滾?

問候 肖恩

+0

一些未知的原因,它的工作知道一定有某種的錯字 – MrX

回答

1

調試這一點,如果錯誤存在,你看到的是運行在主機和回滾消息,否則......

sequelize() 
.transaction(function(t){ 


    myModel.create({name: 'shawn'}).success(function(newModel) { 

     console.log('success1') 
     myModel.create({name: 'shawn'}) 
      .success(function(newModel){ 
       console.log('success2'); 
       t.commit(); 
      }) 
      .error(function(err){ 
       console.log('error2') 
       t.rollback(); 
      }); 

    }).error(function(err) { 
     console.log('error1') 
     t.rollback() 
    }); 
});