Laravel 5.6 и поиск по Алголии дают пустой результат - PullRequest
0 голосов
/ 26 августа 2018

Я использую Алголия на Laravel 5.6 .Я следую инструкциям по Laravel документ.

$searches = Application::search($query)->get();

Коллекция {# 243 ▼ # элементов: []}

Когда я ищуприложение, результат возвращает мне 0 элемент.

Я набираю эту команду:

php artisan scout:import "App\Models\Application"

для отправки элементов в Алголии, и они присутствуют на панели инструментов Алголии, я вижу это.

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Laravel\Scout\Searchable;

class Application extends Model
{
    use Searchable;

    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = [
        'user_id',
        'title',
        'slug',
        'short_description',
        'long_description',
        'state',
    ];

    /**
     * @return string
     */
    public function searchableAs()
    {
        return 'applications';
    }

    /**
     * @return mixed
     */
    public function getScoutKey()
    {
        return $this->title;
    }
}

Ответы [ 2 ]

0 голосов
/ 04 сентября 2018

Это потому, что вы настроили клавишу Scout, а не имя клавиши Scout.

В настоящее время Scout будет пытаться создать коллекцию, совпадающую по идентификаторам с заголовками.Как только вы определили метод getScoutKeyName (который должен возвращать что-то вроде строки title).Это должно работать ?

0 голосов
/ 30 августа 2018

В настоящее время у вас есть пространство имен App\Models.Вы пытались обновить поисковый вызов, чтобы отразить это пространство имен ?:

$searches = App\Models\Application::search($query)->get();
...