Oui, vous pouvez utiliser l'index géospatial MongoDB dans Meteor, et vous pouvez également créer cet index à partir de votre application Meteor.
- Recherche géospatiale
J'utilise le $within
opérateur ci-dessous, par opposition au $near
opérateur mentionné ci-dessus, mais cela s'applique toujours :
Meteor.publish('places', function(box) {
return Places.find({ loc : { $within : { $box : box }}});
});
Rappel :Ces types de requêtes géographiques ne sont disponibles que sur le serveur (actuellement).
- Création d'un index géospatial à partir de Meteor (plutôt que dans un shell MongoDB)
Places._ensureIndex({ loc : "2d" });
par exemple. Vous pouvez utiliser ce qui précède dans votre bootstrap.js
.
Aussi, vous voudrez probablement mettre votre ensureIndex
dans Meteor.startup
, ou peut-être lorsque vous insérez des données initiales.
Avertissement :Comme mentionné ici
, la méthode ci-dessus d'appel de ensureIndex
est un contournement faute d'un moyen officiel de l'appeler, alors attendez-vous à ce que cela puisse changer.
Mettre à jour :reflète désormais les modifications apportées à Meteor 0.5.0, voir @Dror ci-dessous.