Følg disse trin for at installere og konfigurere Elasticsearch i: Laravel
Trin 1: Installer Elasticsearch
For det første skal du installere Elasticsearch på din server eller bruge Elasticsearch cloud-tjeneste som Elastic Cloud. Besøg det Elasticsearch officielle websted for at downloade den relevante version og følg installationsinstruktionerne.
Trin 2: Installer Elasticsearch Package for Laravel
Installer derefter Elasticsearch pakken til Laravel. Der er forskellige pakker der understøtter Elasticsearch i Laravel, men en populær pakke er " Laravel Scout ". For at installere Laravel Scout skal du åbne terminal og køre følgende kommando:
composer require laravel/scout
Trin 3: Konfigurer Elasticsearch i Laravel
Efter installationen Laravel Scout skal du konfigurere den til at bruge Elasticsearch som standardsøgemaskine. Åbn .env-filen til Laravel og tilføj følgende konfigurationsparametre:
SCOUT_DRIVER=elasticsearch
SCOUT_ELASTICSEARCH_HOSTS=http://localhost:9200
Hvor SCOUT_DRIVER
definerer den søgemaskine, der Laravel Scout bruger og SCOUT_ELASTICSEARCH_HOSTS
specificerer den Elasticsearch URL, som Scout vil oprette forbindelse til.
Trin 4: Kør Migration
Kør derefter migration for at oprette den "søgbare" tabel for de modeller, du vil søge i Elasticsearch. Brug følgende kommando:
php artisan migrate
Trin 5: Definer model og tildel søgbar beskrivelse
Til sidst, i den model, du vil søge, tilføjer du egenskaben Searchable
og definerer den søgbare beskrivelse for hver model. For eksempel:
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
];
}
}
Trin 6: Synkroniser data med Elasticsearch
Når du har konfigureret og defineret de søgbare modeller, skal du køre kommandoen for at synkronisere data fra din database til Elasticsearch:
php artisan scout:import "App\Models\Product"
Når den er afsluttet, Elasticsearch er den blevet integreret i Laravel, og du kan begynde at bruge dens søgefunktion i din applikation.