使用节点模块Nano的临时CouchDB视图

纳米不提供临时视图的文档,是否有任何无证的方法? 如果不这样做,你会如何build议有人使用类似纳米语法来执行临时视图。 目前我正在尝试创build视图为_view / guid,查询它,返回结果,然后从集合中删除它:

function generateToken() { return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1); } var db = nano.use('db'), fn = 'function(doc){ emit(doc); }', token = generateToken(), id = '_design/' + token; db.insert({ views: { view: { map: fn } } }, id, function(){ db.view(token, 'view', function (err, results) { db.get(id, function (err, view) { console.log(results); db.destroy(id, view._rev); }); }); }); 

我认为这在临时视图function内置于沙发核心时是不理想的。

我知道临时视图警告,但是我相信我有一个真正的使用案例。

临时视图API在官方CouchDB文档中进行了描述: http : //docs.couchdb.org/en/latest/api/database/temp-views.html#post–db-_temp_view

打开蒲团,看看它对couchDB api有什么要求吗?

编辑:去做了以上

被褥做到SVRNAME / DBNAME / _temp_view?限制= 11&降序=真正的请求有效载荷{语言:“JavaScript”映射:function(DOC){发射(null,doc.id);},你必须以pipe理员身份login。

希望有所帮助

我认为你可以通过使用nano.request()(或nano.dinosaur())通过纳米来做到这一点。 https://github.com/dscape/nano#nanorequestopts-callback