如何编写Couchbase的Spatial视图

时间:2015-08-26 01:30:39

标签: couchbase couchbase-view

我可以这样写吗?

function (doc,meta) {

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

}

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

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

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

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

假设您有一个以这种方式塑造的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

希望有所帮助