2013-10-25 95 views
0

我想通過創建一個字符串concatnated節點貓鼬:更新許多查詢參照當前記錄

我的架構有一個屬性文件名,我想建立一個新的屬性url更新所有行收集的一列。

我可以引用當前行/記錄來構建一個看起來像這樣的查詢嗎?

dbSchema.File.update({}, { $set: { url: '/view/images/'+ fileName}}, options, callback); 

顯然上述不起作用,因爲文件名不是在範圍..

請告訴我實現這一目標的最佳途徑?

回答

2

您需要手動執行此操作並更新JavaScript中的每個文檔並重新保存該文檔。

db.file.find().forEach(function(doc) { 
    // make your needed updates 
    db.file.update({_id:doc._id}, { $set : { url: 'newPath/' + filename }}); 
}); 

雖然你可以從Mongoose中完成,但如果你有權訪問控制檯,沒有多少理由。

否則,當您遇到未更改的文檔時,您需要通過查找指示數據未被修復的指示符來進行交換。

+0

感謝您的澄清。我希望能有一些簡短的方法來做到這一點:) – AyKarsi