使用Rails/Mongoid进行地理空间查询的最佳教程是什么?

7

我在我的Rails应用中使用Mongoid。是否有教程可以学习如何存储和查询位置数据,并获取位于某个位置半径范围内的对象?我一直在寻找但没有找到任何相关内容。

2个回答

3

因为,像我一样,我怀疑很多人更喜欢通过示例来学习,这里有一个示例:

假设您已经在地理空间数组字段上创建了一个2d索引(有关更多详细信息,请参见下文),并且假设您的模型对象是Place,位置字段是:loc,则边界框查询可能如下所示:

# Bounding Box query
Place.where(:loc.within => { "$box" => [ [ 20.73083, 30.99756 ], [ 45.741404, 51.988135 ] ] }).count

除了Gates VP发布的链接之外,还要确保阅读Moingoid的这篇文档:http://mongoid.org/docs/querying/criteria.html。在那里您会找到更多类似上面的示例。
另外,您需要确保已创建索引。请阅读来自Mongoid和相应的MongoDB文档: http://mongoid.org/docs/indexing.html http://www.mongodb.org/display/DOCS/Geospatial+Indexing

0
MongoDB的地理空间索引文档可以在这里找到。它应该为您提供关于“如何存储和查询位置数据”的详细信息。 mongoid只是现有Ruby驱动程序的对象包装器。一旦您了解如何发出地理查询,那么只需通过mongoid发出这些查询即可。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接