【问题标题】:Temporary CouchDB View using Node module Nano使用 Node 模块 Nano 的临时 CouchDB 视图
【发布时间】:2019-05-23 15:42:04
【问题描述】:

Nano 不提供临时视图的文档,是否有任何未记录的方法?如果做不到这一点,您将如何建议某人使用类似 nano 的语法执行临时视图。目前我正在尝试将视图创建为 _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);
        });
    });
});

我认为这对于沙发核心内置的临时视图功能来说是不理想的。

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

【问题讨论】:

    标签: node.js couchdb couchdb-nano


    【解决方案1】:

    【讨论】:

      【解决方案2】:

      打开蒲团,看看它对 couchDB api 的调用是什么?

      编辑:去做了上面的事情

      蒲团向 SVRNAME/DBNAME/_temp_view?limit=11&descending=true 发帖 请求有效负载{语言:“javascript”映射:函数(文档){发出(空,doc.id);} 并且您必须以管理员身份登录。

      希望有帮助

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          猜你喜欢
          • 2018-12-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多