Автозаполнение возвращает неверный результат Bloohound e Typeahead - PullRequest
0 голосов
/ 27 мая 2020

Мой результат автозаполнения показывает нечитаемые результаты:

{"_ query": "Hein", "name": "Heineken"}

Вместо этого приходят только слово Heineken.

Ниже моего кода Javascript:

$(document).ready(function () {

    var produtos = new Bloodhound({

        datumTokenizer: Bloodhound.tokenizers.whitespace('nome'),
        queryTokenizer: Bloodhound.tokenizers.whitespace,
        remote:{
            url: '/ajaxProdutos?searchword=%QUERY%',
            wildcard: '%QUERY%'
        }

    });

    produtos.initialize();
    $("#search").on('click',function(){
        checkMailSearch();
    });  


    $("#bebida").typeahead({
        hint:true,
        highlight: true,
        minLength:1
    },{
        name: "Produtos",
        source:  produtos.ttAdapter()

    });      
});

HTML:

 <input type='text' name='bebida' id='bebida'class='form-control' placeholder="exemplo: Skol 350ml">

Моя Laravel функция контроллера:

    public function ajaxProdutos(Request $request){        

    $produto = DB::table('produto_model')->select('nome')->where('nome','like',$request->searchword.'%');
    $categoria = DB::table('categorias')->select('nome')->where('nome','like',$request->searchword.'%')->union($produto)->get();
    return $categoria;
}

Мой JSON Возврат:

[{"nome":"Conhaque"},{"nome":"Colorado Appia 600ml"},{"nome":"Colorado Berth\u00f4 600ml"},{"nome":"Colorado Caium 600ml"},{"nome":"Colorado Demoiselle 600ml"},{"nome":"Colorado Eug\u00eania 600ml"},{"nome":"Colorado Guanabara 600ml"},{"nome":"Colorado Indica 6000ml"},{"nome":"Colorado Ithaca 600ml"},{"nome":"Colorado Ithaca Woode Aged 600ml"},{"nome":"Colorado Murica 600ml"}]
...