【问题标题】:How do I format CouchDB design documents in a human readable way?如何以人类可读的方式格式化 CouchDB 设计文档?
【发布时间】:2013-09-02 16:57:20
【问题描述】:

由于views 是用JSONCouchDB 中定义的,我很难以人类可读的方式定义它们。

收下这份文件:

{
    "language": "javascript", 
    "views": {
        "by_location": {
            "map": "function(doc) { if (doc.location != null) emit(doc.location, doc) }" 
        }, 
        "by_location_tags": {
            "map": "function(doc) { if (doc.top_tags) { for(i=0;i<doc.top_tags.length;i++) { emit([doc.top_tags[i].tag_name, doc.location], doc); } } }"
        }
    }
}

将 map 函数写成一个长字符串是很丑陋的,而且很难发现错误。我想知道在CouchDB 中定义视图的工作流程是什么?我觉得我错过了显而易见的事情。

【问题讨论】:

  • @Riku 有趣的是,您将函数重新格式化为人类可读的方式。但这实际上是不正确的,因为它不是有效的 JSON ;-)
  • 我重新格式化了它,因为这个问题必须显示实际问题。
  • 也许将它分成不同的字符串并添加 + 号会有所帮助吗?例如"function" + "other part" + "other part" ?
  • 你用什么编辑器来定义它们? Futon 不会像现在一行一样强迫您输入所有内容吗?
  • 哦,哇,我不知道Futon。您能指出这是一个答案,以便我接受吗?

标签: javascript json view couchdb


【解决方案1】:

除了提到的蒲团之外,还有一些工具可让您使用您喜欢的编辑器编写地图和视图功能,并将它们保存在本地文件系统中。这些工具会负责将您的代码“推送”到 CouchDB。

你可以找到more about those tools here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-09
    • 2021-04-09
    • 1970-01-01
    • 2015-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多