jjzjj

PouchDB-CouchDB

全部标签

javascript - 如何管理 CouchDB 代码出来呢?

我是CouchDB制作方式的新手。所以,我对此有很多疑问,但让我们集中讨论其中一个问题。CouchDB具有javascript代码(验证+map-reduce+显示+?)的概念写在设计文档中。这是数据库的一部分,就像存储过程或触发器用于更传统的数据库一样。是否有人在项目中维护此代码,以便我们可以像任何其他javascript代码一样实际测试此代码(例如通过jspec,模拟依赖项),版本在我们对其余代码进行版本控制的同一存储库中,可能在一个单独的文件夹中..是否可能并使用?或者出于某种我应该知道的原因它不是很好吗?我想要的是一些方法来完成单个rake任务,并且我的couchdb设计文档与

javascript - 给每个 CouchDB 用户一个单独的数据库是好的做法吗?

关于用户及其文档的结构,我有一些概念性的问题。在CouchDB中为每个用户提供他们自己的数据库来保存他们的文档是一种好的做法吗?我读到couchDB可以处理数千个数据库,而且每个用户都拥有自己的数据库并不少见。原因:问这个问题的原因是我正在尝试创建一个系统,其中登录用户只能查看他们自己的文档而不能查看任何其他用户的文档。任何建议。提前谢谢你。 最佳答案 为每个用户创建CouchDB存储桶(DB)是相当常见的情况。虽然有一些缺点:您必须使每个用户存储桶中的ddoc保持同步,因此跨多个存储桶部署ddoc更改可能会成为真正的冒险。如果文档

javascript - Couchdb 按键过滤并按另一个字段排序

在couchdb中,我需要按键过滤,这是这样完成的。{"_id":"_design/test","_rev":"6-cef7048c4fadf0daa67005fefe","language":"javascript","views":{"all":{"map":"function(doc){if(doc.blogId){emit(doc.key,doc);}}"}}}然而,结果应该由另一个键(doc.anotherkey)排序。那么使用相同的函数,我如何通过另一个键实现过滤和排序。谢谢 最佳答案 如果只需要单key查询,您可以使用

javascript - CouchDb 自动时间戳

我正在使用CouchDB实现消息应用程序。我想为每条消息应用时间戳。我发现一些引用表明我应该使用documentupdatehandlers为了这。就地更新似乎是正确的事情。但是我从哪里得到时间戳呢?它在某个地方的req对象中吗?{updates:{"in-place":function(doc,req){doc.timestamp="???";varmessage="settimestampto"+doc.timestamp;return[doc,message];}}} 最佳答案 答案是使用javascript的日期函数。{up

javascript - 从 couchdb 返回 sha1() 散列

我有一些数据以键值对的形式存储在CouchDb中。基本上它是一个带有值和盐的元组。我创建了一个View,该View返回这些元组并使用javascript在客户端计算value+salt的sha1()。是否可以直接从CouchDb将value+salt的sha1()散列作为JSON发送?我不希望将盐发送给客户。谢谢。 最佳答案 我建议直接在CouchDB上使用JavascriptSHA1[1]实现。我认为您有两个选择:计算View中的校验和。查询速度不变,但View代码会增长一点。在_list函数中计算校验和。查询速度(原则上)会变慢

javascript - 将 CouchDB javascript View 转换为 erlang

我需要一些帮助将以下CouchDBView从javascript转换为erlang。我在erlang中需要它们,因为在javascript中,View使用了所有可用的堆栈内存并使couchjs崩溃(请参阅此错误报告https://issues.apache.org/jira/browse/COUCHDB-893)。我在javascript中的当前map函数是:sync/transaction_keysfunction(doc){if(doc.doc_type=="Device"){for(keyindoc.transactions)emit(key,null);}}和同步/交易func

docker - Hyperledger Fabric 使用 go sdk 在 CouchDB 中存储交易

我正在尝试将CouchDB集成为我的Hyperledger网络的statedb,但在将值传递到putState函数(gosdk)以更新状态时遇到了问题。文档说需要将“状态”配置添加到core.yaml文件中。但是,这个文件在balance-transfer中不存在,所以我修改了network-config.yaml文件,将stateDatabase改为couchdb而不是goleveldb,如下所示:state:stateDatabase:CouchDBcouchDBConfig:couchDBAddress:https://localhost:5984username:passwor

sql-server - 批量加载 CouchDB 时遇到的问题

我在MSSQL2005中有大约15k行我想迁移到CouchDB,其中一行是一个文档。我有一个CLR-UDF,它将n行写入模式绑定(bind)的XML文件。我有一个XSL转换,可将模式绑定(bind)的XML转换为JSON。有了这些现有工具,我想我可以将MSSQL转换为XML再到JSON。如果我为每个JSON文件批处理n行,我可以编写cURL脚本来循环遍历文件并使用批量API_bulk_docs将它们发布到CouchDB。这行得通吗?以前有人做过这样的迁移吗?你能推荐一个更好的方法吗? 最佳答案 到目前为止,我做了一些从遗留SQL数据

xml - 如何将 xml 放入 couchDB?

我想这样做:1.PUT一个xml字符串到couchdb服务器。像这样的东西:curl-XPUThttp://localhost:5984/db/_design/app/_update/echo/h1-d"value1value2"在couchdb服务器端,我将xml字符串解析为json对象。将json对象保存为文档。这可能吗?我该怎么办?谢谢! 最佳答案 我找到了另一种方法,这里是示例:创建数据库curl-XPUThttp://localhost:5984/bookstore创build计文档curl-XPOSThttp://loc

windows - 使用 google Chrome V22 将数据从 CouchDB 复制到 PouchDB 以在 Windows 7 上进行离线存储

我正在尝试使用从CouchDB提取数据的代码将数据从CouchDB复制到PouchDB以进行离线存储:db.replicate.from('http://test.iriscouch.com/todo','idb://todo',function(err,changes){if(err){console.log(err);}else{console.log(changes);}});$scope.loadTodos(response.rows);我收到这些错误:加载资源失败:服务器返回状态405(不允许的方法)XMLHttpRequest无法加载http://test.iriscouc