searchkick - Autocomplete with multiple attributes

后端 未结 2 1773
盖世英雄少女心
盖世英雄少女心 2020-12-21 11:26

Autocomplete works ok when searching with a single attribute as given here.

Autocomplete with multiple attributes such as (name,city,country) is possible through->(a

2条回答
  •  眼角桃花
    2020-12-21 12:00

    You need to return a hash

    Your autocomplete action in doctors controller need to look like this :

    def autocomplete
      render json: Doctor.search(params[:query], autocomplete: true, limit: 10).map do |doctor| { name: doctor.name, city: doctor.city, country: doctor.country }
      end
    end
    

    Add displayKey in your typeahead option:

    $( function () {
       $("#search").typeahead({
        name: "doctor",
        displayKey: 'name',
        remote: "/doctors/autocomplete?query=%QUERY"
      });
    });
    

    You can also read this article and see if it helps.

提交回复
热议问题