Installeren en configureren Elasticsearch in Laravel

Volg deze stappen om Elasticsearch in te installeren en te configureren: Laravel

Stap 1: installeren Elasticsearch

Elasticsearch Ten eerste moet u op uw server installeren of Elasticsearch een cloudservice zoals Elastic Cloud gebruiken. Bezoek de Elasticsearch officiële website om de juiste versie te downloaden en volg de installatie-instructies.

Stap 2: Installeer Elasticsearch Package voor Laravel

Installeer vervolgens het Elasticsearch pakket voor Laravel. Er zijn verschillende pakketten die ondersteuning bieden Elasticsearch voor Laravel, maar een populair pakket is " Laravel Scout ". Om te installeren Laravel Scout, opent u de terminal en voert u de volgende opdracht uit:

composer require laravel/scout

Stap 3: Configureer Elasticsearch in Laravel

Na installatie Laravel Scout moet u het configureren om Elasticsearch als standaardzoekmachine te gebruiken. Open het .env-bestand van Laravel en voeg de volgende configuratieparameters toe:

SCOUT_DRIVER=elasticsearch  
SCOUT_ELASTICSEARCH_HOSTS=http://localhost:9200  

Waar SCOUT_DRIVER definieert de zoekmachine die Laravel Scout gebruikt en SCOUT_ELASTICSEARCH_HOSTS specificeert de Elasticsearch URL waarmee Scout verbinding zal maken.

Stap 4: Rennen Migration

Voer vervolgens de opdracht uit migration om de "doorzoekbare" tabel te maken voor de modellen waarin u wilt zoeken Elasticsearch. Gebruik de volgende opdracht:

php artisan migrate

Stap 5: Definieer het model en wijs een doorzoekbare beschrijving toe

Ten slotte voegt u in het model dat u wilt zoeken de Searchable eigenschap toe en definieert u de doorzoekbare beschrijving voor elk model. Bijvoorbeeld:

use Laravel\Scout\Searchable;  
  
class Product extends Model  
{  
    use Searchable;  
  
    public function toSearchableArray()  
    {  
        return [  
            'id' => $this->id,  
            'name' => $this->name,  
            'description' => $this->description,  
            // Add other searchable fields if needed  
        ];  
    }  
}  

Stap 6: gegevens synchroniseren met Elasticsearch

Na het configureren en definiëren van de doorzoekbare modellen voert u de opdracht uit om gegevens uit uw database te synchroniseren met Elasticsearch:

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

Eenmaal voltooid, Elasticsearch is geïntegreerd in Laravel, en u kunt de zoekfunctie in uw toepassing gaan gebruiken.