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.