0
我正在編寫一個小的Javascript應用程序,允許您對MongoDB數據庫中的元素重新排序。數據庫中的每個條目都有一個名爲「order」的字段,表示它的位置。MongoDB/Node.js:交換不同對象之間的字段
因此,當您在db中選擇一個條目來移動「向上」時,我想將理論上相鄰元素與「order-1」位置之間的「order」字段交換。
這裏是我到目前爲止的代碼:
collection.find({ "name": request.body.itemToMove }).toArray(function(err,doc) {
ordernum = doc[0].order;
});
在這裏,我從MongoDB的元素抓的順序領域。我需要現在用ordernum - 1查找數據庫條目,該條目位於我們想要在列表中移動的條目的上方。
除了顯然我使用doc [0] .order返回的對象不是我可以使用數學運算符處理的數據類型。
swapIndex = ordernum - 1
不工作,但是
console.log(ordernum);
打印一個數字控制檯。我也認爲我可能會測試出使用對象本身簡單地查詢我的數據庫,但是查詢失敗。
collection.find({ "order": ordernum }).toArray(function(err,doc) {
//Do something
});
這也失敗了。有什麼方法可以讓我找出一種交換「訂單」字段的方法嗎?