如何使用Algolia在zip上应用aroundRadius

时间:2018-06-01 14:01:07

标签: ruby sinatra algolia instantsearch.js

我在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选项,以便搜索按照我的要求开始工作。

0 个答案:

没有答案