couchdb:设计文档中的映射给出编译错误

couchdb:设计文档中的映射给出编译错误,couchdb,Couchdb,我在Debian测试中使用Couchdb 1.1.1 我在数据库里有这个设计文档 { "_id": "_design/Page", "_rev": "9-1944cdebabf20ae569eab7b534b43e67", "views": { "all": { "map": "function(doc) {}" } }, "language": "javascript" } 但我还是进入了http://localhost:5984/db_dev

我在Debian测试中使用Couchdb 1.1.1

我在数据库里有这个设计文档

{
 "_id": "_design/Page",
 "_rev": "9-1944cdebabf20ae569eab7b534b43e67",
 "views": {
     "all": {
         "map": "function(doc) {}"
     }
 },
 "language": "javascript"
}
但我还是进入了
http://localhost:5984/db_development/_design/Page/_view/all

{“error”:“compilation\u error”,“reason”:“表达式未对函数求值”((新字符串(\“function(doc){}\”))))”}

我尝试在spidermonkey bin解释器中运行不同的简单映射函数,它们被正确加载,但在couchdb中出现相同的错误

我真的看不出问题出在哪里


好的,在邮件列表中,我发现需要将函数包装到括号“()”,因为较新的spidermonkey中发生了一些变化


所以map函数看起来是这样的:
“map:”(函数(doc){emit([doc.\u id,doc.\u rev])})

map函数中没有返回语句。map函数需要返回一些内容


如果您需要获取所有文档的原始转储,则有一个内置功能:

好的,在邮件列表中,我发现需要将函数包装到括号“()”,因为较新的spidermonkey中发生了一些更改


所以map函数看起来像这样:“map”:(函数(doc){emit([doc.\u id,doc.\u rev])})

如果出现此错误,请注意设计文档的结构是否正确。(我收到这样的消息是因为我的
shows
定义中出现了一个愚蠢的错误。)


另外,我不确定这是否是个问题,但我认为函数定义中的花括号前不应该有空格。

我可能会将其更改为“函数(doc){emit(doc.\u id,doc.\u rev)}”或更复杂的函数,但仍然是相同的错误-1,因为答案完全错误。couchdb映射函数不需要返回任何东西,而且javascript函数也不需要返回任何东西就可以成为有效的函数。Ivan,你刚刚为我节省了时间。谢谢