更新CouchDB中的单个字段

pdkcd3nj  于 2023-06-20  发布在  CouchDB
关注(0)|答案(2)|浏览(169)

我想更新文档中的一个字段。我创建了一个新文档:

我想将字段name的值从aaa更改为test。我抄了一个脚本:wiki.apache.org/couchdb/Document_Update_Handlers,我创建了一个新的设计文档:

接下来我创建了一个URL:

localhost:5984/asd/_design/temp/_update/in-place-query/8d6257096bbb199a3757954c00000d0c?name=title&value=test

这将更新我的领域。我反而看到了错误:

"{"error":"TypeError","reason":"{[{<<\"message\">>,<<\"point is undefined\">>},\n  {<<\"fileName\">>,<<\"../share/couchdb/server/main.js\">>},\n  {<<\"lineNumber\">>,1500},\n  {<<\"stack\">>,\n   <<\"(\\\"_design/temp\\\",[object Array],[object Array])@../share/couchdb/server/main.js:1500\\n()@../share/couchdb/server/main.js:1562\\n@../share/couchdb/server/main.js:1573\\n\">>}]}"}"

你有什么办法修理它吗?

mxg2im7a

mxg2im7a1#

您的更新处理程序设计文档应采用以下格式:

{
    "_id": "_design/app",
    "updates": {
        "accumulate": "function (doc, req) { // Your code here }"
    }
}

欲了解更多信息,请查看此SO帖子。
让我知道如果这有帮助!

czq61nw1

czq61nw12#

文档更新要求您发送_rev id,这意味着您必须事先阅读文档。因此,您所要做的就是设置任何文档对象属性的值,然后将预先读取的文档以PUT w _rev的形式传递回couch进行更新。

相关问题