我有一個儀表板視圖(dashboard.jade),將顯示兩個面板與不同的信息,所有的信息應該從數據庫中檢索,然後發送到視圖發送多個數據庫查詢結果的單一視圖。使用快遞
比方說,我有兩個動作一個路由文件(document.js)定義:
exports.getAllDocuments = function(req, res){
doc = db.model('documents', docSchema);
doc.find({}, function(err, documents) {
if (!err) {
// handle success
}
else {
throw err;
}
});
};
exports.getLatestDocumentTags = function(req, res){
tags = db.model('tags', tagSchema);
tags.find({}, function(err, docs) {
if (!err) {
// handle success
}
else {
throw err;
}
});
};
這些功能只會從數據庫中檢索數據的porpuse。
現在我想將數據發送到儀表板視圖從我dashboard.js路由文件exports.index功能,其中i使我的儀表板視圖下。
的問題是,由於DB調用將是異步,我也不會對數據的訪問之前,我可以調用視圖。
我想我可以有一個動作,簡單地做了我所有的數據庫調用,並通過回調一次提供所有的數據視圖,這將使我的數據檢索的動作不能重複使用。
我對如何正確處理這個問題真的很困惑,可能我得到這個異步的事情都是錯誤的。有人可以給我一些關於如何正確執行此操作的提示嗎?