2017-02-16 5 views
0

私はどのように私の藻類の記録を特定の値に基づいてランク付けできますか? 値は、ユーザーのIP位置に基づいて動的です。アルゴリア:値に基づいて検索をランク付けする方法は?

私はSC状態をリストに最初に表示したいのですが、どうすればいいですか?例えば

私はこの

algoliaIndex.search({ 
    query: 'Emergency Department' +' '+ 'SC', 
}, function(err, hits) { 
    console.log(hits.hits); 
}); 

私のインデックスの設定

[ 
'searchableAttributes' => [ 
    'general_name', 
    'name', 
    'category', 
    'address.city', 
    'address.state', 
    'address.zip_code', 
    ], 
'customRanking' => [ 
    "desc(address.state)", 
    "desc(general_name)" 
    ], 
] 

答えて

1

あなたがに地理検索機能を使用することができますように私の検索コードを書いた記録

[ 
{ 
    "category":"Emergency Department", 
    "address": {"state": "SC"} 
    ...... 
}, 
{ 
    "category":"Emergency Department", 
    "address": {"state": "NC"} 
    ...... 
}, 
{ 
    "category":"Emergency Department", 
    "address": {"state": "NC"}, 
    ...... 
}, 
{ 
    "category":"Radiology", 
    "address": {"state": "WV"} 
    ...... 
}, 
{ 
    "category":"PROVIDENCE HOSPITAL", 
    "address": {"state": "TN"} 
    ...... 
}, 
{ 
    "category":"PROVIDENCE HOSPITAL", 
    "address": {"state": "TN"} 
    ...... 
}, 
] 

を持っていますユーザーの場所に基づいて結果をソートします。ここではそれを実装するためのガイドです:https://www.algolia.com/doc/guides/geo-search/geo-search-overview/#filter-and-sort-around-a-location

APIを使用すると、直接IPを提供できますし、自動的に対応する座標に変換されます。それを達成するためにhttps://www.algolia.com/doc/guides/geo-search/geo-search-overview/#by-looking-at-the-ip-address

、あなたはあなたのアドレスを変換する必要があります.stateフィールドを緯度/経度座標に変換して動作させます。このSOスレッドを見て、それを行うデータベースを見つけることができます:Latitude and Longitude based on Zip Code

関連する問題