2017-06-27 1 views
0

Ich implementiere die Geo-Suche mit Algolia im Internet. Mein Code ist wie folgt:Geo-Suche mit Algolia

var searchClient = algoliasearch(Algol_APP_ID, Algol_API_KEY); 
var itemIndex = searchClient.initIndex('item'); 

function searchItems(keyword, lat, lng) { 
    var prom; 
    var searchObj = { 
    query: keyword, 
    aroundRadius: 200 
    }; 

searchObj.aroundLatLngViaIP = true; 

return itemIndex.search(searchObj) 
    .then(function (content) { 
     console.log(content); 
    return content; 
    }) 
} 

Wenn ich searchObj.aroundLatLngViaIP = true; Kommentar aus wird es Artikel, aber sobald ich es bin, bekomme ich wieder nichts von algolia. Ich denke, das Problem ist in den Daten, ich habe nicht die _geoloc Parameter, der in den Tutorials ist, aber ich sehe nirgendwo in der Dokumentation, die lat und lng Parameter müssen von diesem Parameter eingekapselt werden. Aber wenn jemand das bestätigen kann, ist das ein Problem, gibt es eine Möglichkeit, einen Parameter in Algolia mit diesem Parameter zu verknüpfen, anstatt alle Daten in meiner Datenbank neu zu schreiben, um diesen Parameter zu verwenden?

Antwort

1

in der Tat mit der _geoloc Eigenschaft ist die einzige Möglichkeit, Geo-Lokalisierung Fähigkeiten mit Algolia haben. Dies ist heute nicht konfigurierbar.

Sie müssen nicht die gesamten Daten in Ihrer DB neu schreiben, Sie könnten nur die in Algolia neu schreiben, wenn Sie dies in Ihrem Produktionsfluss/Daten tun können.