2015-02-17 111 views
2

我在想,是否可以在couchDB设计文档中将值传递给map函数。将值传递给map函数--CouchDB

例如:

在下面的代码是有可能通过已经由用户输入的值,并使用该值来运行图的功能。也许我可以在用户登录时通过用户用户名,然后根据地图功能显示视图。

function(doc) { 
    if(doc.name == data-Entered-By-User) { 
    emit(doc.type, doc); 
    } 
} 

在此先感谢您。 Regards

+0

查看关于视图如何工作的[docs](http://docs.couchdb.org/en/1.6.1/couchapp/views/index.html)。简短的答案是_no_,但我认为您需要详细了解CouchDB(以及它的视图)的工作方式。 – 2015-02-18 03:22:09

回答

5

这是使用视图时CouchDB常见的错误。这是有点混乱,但不是这样的:

function (doc) { 
    if (doc.value === 'thing I am looking for') { 
    emit(doc.value); 
    } 
} 

你想要的是这样的:

function (doc) { 
    emit(doc.value); 
} 

然后当你查询,你这样做:

/mydb/_design/myddoc/_view/myview?key="thing I am looking for" 

你可能想要阅读我的12 pro tips for better code with PouchDB,尤其是第9条提示。这些提示同样适用于CouchDB。 :)