gpt4 book ai didi

javascript - 通过 Couchdb 中的更新处理程序添加 id 和 author 字段

转载 作者:行者123 更新时间:2023-11-30 18:22:27 24 4
gpt4 key购买 nike

人们如何通过 Couchdb 中的更新处理程序添加额外的字段?我想添加作者(我有一个验证功能来检查用户是否登录)和在通过更新处理程序创建新记录器时添加的 ID。

作者姓名来自 req.userCtx.Name,我发送的数据在 req.body 中,我使用 req.uuid 作为 _id

"updates": {
"new": "function(doc,req) { var message = req.uuid; return [ { _id : req.uuid, "author" : req.userCtx.name, data : req.body}, message]}"
}

数据已通过 curl POST 发送

$ cat test.json
{"data" : {"name" : "myname","dob" : "myDOB"}}

这是数据通过更新处理程序的样子

{"_id":"a018fed749d64f5db754b39af803a88f","_rev":"1-939793c36d2bfe4de86f808fab056959","author":"admin","data":"{\"name\" : \"myname\",\"dob\" : \"myDOB\"}"}

如果我执行标准 POST(不是通过更新处理程序),它看起来像这样..

{"_id":"a018fed749d64f5db754b39af803b621","_rev":"1-e44f0471e1df1018439fee3681b49547","data":{"name":"myname","dob":"myDOB"}}

我做错了什么?


编辑

通常我会花几个小时查看然后发布问题,然后找到解决方案。

这有帮助 - http://grokbase.com/t/couchdb/user/10cbesx3zz/how-should-i-handle-json-parsing-in-update-handler

{ "new": "function(doc,req) { var data = JSON.parse(req.body); data['_id'] = req.uuid;data.author = req.userCtx.name; message = req.uuid; return [ data, message]}" }

doc 现在有 id 和 author ..

{"_id":"a018fed749d64f5db754b39af80406b7","_rev":"1-c486b02d6f320eb15e6115e71b3f02cc","data":{"name":"myname","dob":"myDOB"},"author":"admin"}

最佳答案

通常我会花几个小时查看然后发布问题,然后找到解决方案。

这来自 - http://grokbase.com/t/couchdb/user/10cbesx3zz/how-should-i-handle-json-parsing-in-update-handler

{
"new": "function(doc,req) {
var data = **JSON.parse(req.body)**;
data['_id'] = req.uuid;data.author = req.userCtx.name;
message = req.uuid;
return [ data, message]
}"
}

doc 现在有 id 和 author ..

{   "_id":"a018fed749d64f5db754b39af80406b7",
"_rev":"1-c486b02d6f320eb15e6115e71b3f02cc",
"data":{"name":"myname","dob":"myDOB"},
"author":"admin"
}

关于javascript - 通过 Couchdb 中的更新处理程序添加 id 和 author 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11739806/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com