Ruby on Rails应用中Algolia Places能否同时搜索城市和国家?
关于Algolia Places同时搜索城市和国家的解决方案
嘿,刚好我对Algolia Places组件有不少实践经验,来帮你解决这个问题~
其实Algolia Places是支持同时搜索城市和国家的,只是不能直接把type参数设成数组形式。这里有两种靠谱的实现方式:
方式一:不指定
type参数
默认情况下,如果你不设置type,组件会返回多种类型的地点结果,其中就包含城市和国家。不过这种方式也会附带其他类型(比如街道、机场等),如果你的需求是允许这些结果一起展示,这是最简单的做法。方式二:用
filters参数精准筛选
如果你只想严格返回城市和国家这两类结果,那就可以通过filters参数来做过滤,用OR连接两种类型即可:places({ container: document.querySelector('#your-rails-search-input'), filters: 'type:city OR type:country' });这样配置后,搜索栏就只会匹配城市和国家的相关结果,完全符合你的需求。
需要注意的是,如果你之前代码里设置了type: 'city'或者type: 'country',一定要把这个参数去掉,否则filters的设置会被覆盖哦。在Ruby on Rails项目里,不管你是直接在ERB模板里写前端初始化代码,还是用相关gem集成,只要把上述参数配置好就能生效啦。
内容的提问来源于stack exchange,提问作者Antonin Mrchd
相关产品推荐
相关产品推荐

