Có, bạn có thể sử dụng chỉ mục không gian địa lý MongoDB trong Meteor, và bạn cũng có thể tạo chỉ mục đó từ trong ứng dụng Meteor của mình.
- Tìm kiếm không gian địa lý
Tôi đang sử dụng $within
toán tử bên dưới, trái ngược với $near
đã đề cập ở trên, nhưng điều này vẫn được áp dụng:
Meteor.publish('places', function(box) {
return Places.find({ loc : { $within : { $box : box }}});
});
Lời nhắc :Các loại truy vấn địa lý này chỉ có sẵn trên máy chủ (hiện tại).
- Tạo Chỉ mục không gian địa lý từ bên trong Meteor (chứ không phải trong trình bao MongoDB)
Places._ensureIndex({ loc : "2d" });
ví dụ. Bạn có thể sử dụng phần trên trong bootstrap.js
của mình .
Ngoài ra, có thể bạn sẽ muốn đặt ensureIndex
của mình trong Meteor.startup
hoặc có thể khi bạn đang chèn một số dữ liệu ban đầu.
Cảnh báo :Như đã đề cập tại đây
, phương thức gọi ensureIndex
ở trên là một công việc xung quanh để muốn có một cách chính thức để gọi nó, vì vậy hãy mong đợi rằng điều này có thể thay đổi.
Cập nhật :hiện phản ánh các thay đổi trong Meteor 0.5.0, xem @Dror của bình luận bên dưới.