2010-09-25 143 views
3

例如,我有標籤名稱的帖子,我決定重命名其中一個標籤。批量更新時,我應該知道修訂版並不適合。更好的是,如果這可能是綜合的東西。CouchDb批量重命名

+0

我能澄清這個問題嗎?你有一堆在你的數據庫文件看起來像這樣: { ..., someField:「一些價值」, ... } 你想改變「someField」上的所有文件是「newFieldName」而不會丟失值。你在問什麼? – 2010-11-28 19:28:02

+0

標籤可能是一個數組,[CouchDB,Redis]。例如,我想將所有「CouchDB」標籤重命名爲「couch-db」。 – 2010-11-29 22:34:53

回答

1

檢查出Costco,它提供了一個簡單的界面,讓您編寫一個小函數來應用於所有文檔以修改它們。

你會寫這樣一個簡單的函數:

function (doc) { 
    // ignore documents without tags 
    if (!doc.tags) return doc; 

    for (var i = 0, len = doc.tags.length; i < len; i += 1) { 
    // convert tag misspelled "couch-db" to real name "CouchDB" 
    if (doc.tags[i] === "couch-db") doc.tags[i] = "CouchDB"; 
    } 
    return doc; 
}