如何映射组合键

Posted

技术标签:

【中文标题】如何映射组合键【英文标题】:How do I map combination keys 【发布时间】:2021-10-10 05:47:31 【问题描述】:

我正在使用 cURL 开发 Apache CouchDB。 我创建了一个数据库,添加了数据库文件并创建了一个视图。 我已经为将键映射到视图进行了以下配置。

function (doc) 
   emit([doc.key1, doc.key2, doc.key3], doc);   

我想使用组合键访问数据库文件。 IE。 在上述情况下,key1 在我的 URL 的获取请求中是固定的。 但我无法控制 key2 和 key3(有时我有 key2 而休息我有 key3)。

请你帮我知道, 如何使用 key1-key2 或 key1-key3 的组合访问数据库?

【问题讨论】:

一个文档会同时拥有 key2 和 key3 吗?区分查询中的两个键是否重要? 【参考方案1】:

看看这个指南:https://docs.couchdb.org/en/stable/ddocs/views/collation.html#examples

因此,您可以尝试以下方法:

startkey=[<val_key1>]&endkey[<val_key1>, , ]

startkey=[<val_key1>, <val_key2>]&endkey[<val_key1>, <val_key2>, ]

如果您使用 cURL,请不要忘记对大括号进行编码或使用选项 -g/--globoff (Passing a URL with brackets to curl)。

【讨论】:

【参考方案2】:

如何使用 key1-key2 或 key1-key3 的组合访问数据库?

如果您想根据 key1key2key3 的存在或值来访问文档,您很可能不想创建一个简单地发出 all 的 View它们作为键。

相反,首先使用_find-API 查看Mango queries 并构造它们。返回所需的文件。例如:


  "selector": 
    "key1": 
      "$gt": null
    ,
    "key2" 
      "$lt": "too high"
    

为您的查询创建一个匹配的index 或view。

【讨论】:

以上是关于如何映射组合键的主要内容,如果未能解决你的问题,请参考以下文章

将未映射的菜单项映射到 Visual Studio 中的组合键

在其重映射中发送组合键不起作用 AHK

oeasy教您玩转vim - 76 - # 组合键映射map

Hibernate 中 联合主键映射 组合关系映射 大对象映射(或者说文本大对象,二进制数据大对象)

PostMessage如何发送Ctrl组合键

Oracle序列和主键映射