2015-11-13 84 views
0
user.save(function (err){ 
    if(err){ 
     throw err; 
    }else{ 
     admin.save(function (err){ 
      if(err){ 
       throw err; 
      }else{ 
       res.redirect('/home'); 
      } 
     }); 
    } 
}); 

這似乎不起作用。有關如何一次保存多個文檔的任何建議?除了貓鼬以外,是否還有其他模塊可以用來保存它們?謝謝。一次保存多個文檔 - Mongoose.js

我也試過這樣:

user.save(function (err){ 
    if(err) 
     throw err; 
    next(); 
}); 
admin.save(function (err){ 
    if(err) 
     throw err; 
    res.redirect('/home'); 
}); 

但是,這並沒有任何工作!再次感謝您的幫助

+0

只要它們都是貓鼬文件,最上面的一個就應該工作 – cdbajorin

+0

你現在怎麼樣,它不起作用,你會得到什麼樣的錯誤?你是如何檢查你的代碼流? –

+0

我得到的錯誤是「發送後無法設置標題」。只有第一個保存函數被調用,並且它工作d和我也嘗試過只有第二個保存函數,然後再次運行(我已經嘗試了這兩種寫法,但我仍然得到相同的錯誤!)。但事情是....兩個文件得到保存,但服務器崩潰(和我得到上面的錯誤),它不會重定向到'/ home',所以我必須重新啓動服務器,讓它再次運行。 –

回答

0
app.post('/homeUser', function (req, res, next) { 
      user.findOne({'accountOwner': req.user.userdata.username}, function (err, user){ 
       if(err) 
        throw err; 
       if(user){ 
        console.log('user found'); 
        user.userdata.username = req.body.newUserName; // I have some other variables as well but they don't matter 
        user.save(function (err){ 
         if(err) 
          throw err; 
         res.redirect('/home'); 
        }); 
       } else if(!user) { 
        console.log('new user'); 
        var newUser = new user(); 
        //setting up some values for the newUser and some for the req.user 
        newUser.save(function (err){ 
         if(err){ 
          throw err; 
         }else{ 
          req.user.save(function (err){ // the problem is here 
           if(err){ 
            throw err; 
           }else{ 
            res.redirect('/home'); 
           } 
          }); 
         } 
        }); 
       } 
      }); 
    } 

的錯誤是在其他{req.user.save(函數(ERR){或至少在 該行。(對不起,如果有任何的拼寫錯誤,我寫了這個代碼剛纔,因爲我沒有使用計算機進行編碼,但這幾乎是代碼(除了一些分號和大括號!))