【问题标题】:how to write Couchbase`s Spatial view如何编写 Couchbase 的空间视图
【发布时间】:2015-11-19 21:38:54
【问题描述】:

我可以这样写吗?

function (doc,meta) {

emit([[doc.range1, doc.range2],[doc.range3, doc.range4]], doc.comment); 

}

我只想找到使用两个范围的数据。我找到了一个示例

emit([10.9, 48.4, [1000, 2000]], null);

范围[1000,2000]是否可以过滤数据?

【问题讨论】:

    标签: couchbase couchbase-view


    【解决方案1】:

    以下链接会有所帮助:http://developer.couchbase.com/documentation/server/4.0/sdks/dotnet-2.2/geo-spatial-views.html

    请记住,空间功能在 4.0 版之前是实验性的。 为了与 python 一起使用,在我的例子中,它提供了SpatialQuery 对象。
    (从 couchbase.views.params 导入 SpatialQuery)

    【讨论】:

      【解决方案2】:

      假设你有一个这样形成的 json 文档

      {
        "resourceId": "3c0d9906-4e88-4b12-b96b-9d7377a503a9", 
        "_type": "com.sample.model.Position",
        "updated": 1510790620782,
        "point": {
        "coordinates": [15.704621,40.2755],
       "type": "Point"
       }
      }
      

      你可以这样写空间视图

      function (doc) {
      if (typeof doc.point !== 'undefined' && doc._type == "com.sample.model.Position") {
          var date = Date.parse(doc.updated) / 1000;
          emit(doc.point, doc.resourceId);
          }
      }
      

      您可以使用浏览器来设计您的文档: 去http://localhost:8091 进入索引 -> 查看菜单 从那里您可以使用数据中的真实文档测试视图 这将创建索引;要查询索引,您可以使用地理功能,即使是在

      中描述的休息时

      official documentation

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-06-14
        • 1970-01-01
        • 1970-01-01
        • 2015-04-28
        • 1970-01-01
        • 1970-01-01
        • 2023-03-27
        相关资源
        最近更新 更多