我在Sinatra应用程序中使用Algolia Search。我希望当用户在搜索字段中输入邮政编码时,用户应该获得与查询匹配的记录,并获得与25英里半径的邮政编码匹配的记录。
我使用过gem 'algoliasearch'
。
在我的模型中,我初始化了Algolia及其索引:
Algolia.init(application_id: "XXXXXXXX",
api_key: "XXXXXXXXXXXXXXXXXXXXXXXXXX424")
my_index = Algolia::Index.new("survey_questions")
my_index.save_object({
:objectID => self.id,
:id => self.id,
:x_id => self.x_id.to_s,
:profile_name => self.profile_name,
:dob => self.dob,
:age => age(self.dob),
:preferred_activities => self.preferred_activities,
:entertainment => self.entertainment,
:hobbies => self.hobbies,
:favorite_exercise => self.favorite_exercise,
:organizations => self.organizations,
:_geo_loc => {"lat": lat, "lng": lng}
})
之后,我在javascript文件中初始化了instantsearch,如下所示:
var search = instantsearch({
appId: 'XXXXXXXX',
apiKey: 'XXXXXXXXXXXXXXXXXXXXXXX', // search only API key, no ADMIN key
indexName: 'survey_questions',
urlSync: true,
getRankingInfo: true,
aroundPrecision: 1000,
searchParameters: {
hitsPerPage: 9
}
});
search.addWidget(
instantsearch.widgets.searchBox({
container: '#search-input',
magnifier: false,
aroundRadius: 25
})
);
现在我无法在哪里添加aroundRadius
选项,以便搜索按照我的要求开始工作。