Για να εγκαταστήσετε και να ρυθμίσετε τις παραμέτρους Elasticsearch στο Laravel, ακολουθήστε τα εξής βήματα:
Βήμα 1: Εγκατάσταση Elasticsearch
Πρώτον, πρέπει να εγκαταστήσετε Elasticsearch στον διακομιστή σας ή να χρησιμοποιήσετε Elasticsearch την υπηρεσία cloud όπως το Elastic Cloud. Επισκεφτείτε τον Elasticsearch επίσημο ιστότοπο για λήψη της κατάλληλης έκδοσης και ακολουθήστε τις οδηγίες εγκατάστασης.
Βήμα 2: Εγκατάσταση Elasticsearch Package για Laravel
Στη συνέχεια, εγκαταστήστε το Elasticsearch πακέτο για Laravel. Υπάρχουν διάφορα πακέτα που υποστηρίζουν Elasticsearch σε Laravel, αλλά ένα δημοφιλές πακέτο είναι το " Laravel Scout ". Για να εγκαταστήσετε Laravel Scout, ανοίξτε terminal και εκτελέστε την ακόλουθη εντολή:
composer require laravel/scout
Βήμα 3: Ρύθμιση Elasticsearch παραμέτρων Laravel
Μετά την εγκατάσταση Laravel Scout, πρέπει να το ρυθμίσετε ώστε να χρησιμοποιείται Elasticsearch ως η προεπιλεγμένη μηχανή αναζήτησης. Ανοίξτε το αρχείο .env του Laravel και προσθέστε τις ακόλουθες παραμέτρους διαμόρφωσης:
SCOUT_DRIVER=elasticsearch
SCOUT_ELASTICSEARCH_HOSTS=http://localhost:9200
Where SCOUT_DRIVER
ορίζει τη μηχανή αναζήτησης που Laravel Scout χρησιμοποιεί και SCOUT_ELASTICSEARCH_HOSTS
καθορίζει τη Elasticsearch διεύθυνση URL στην οποία θα συνδεθεί το Scout.
Βήμα 4: Εκτέλεση Migration
Στη συνέχεια, εκτελέστε το migration για να δημιουργήσετε τον πίνακα "με δυνατότητα αναζήτησης" για τα μοντέλα στα οποία θέλετε να πραγματοποιήσετε αναζήτηση Elasticsearch. Χρησιμοποιήστε την ακόλουθη εντολή:
php artisan migrate
Βήμα 5: Ορισμός μοντέλου και αντιστοίχιση περιγραφής με δυνατότητα αναζήτησης
Τέλος, στο μοντέλο που θέλετε να αναζητήσετε, προσθέστε το Searchable
χαρακτηριστικό και ορίστε την περιγραφή με δυνατότητα αναζήτησης για κάθε μοντέλο. Για παράδειγμα:
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
];
}
}
Βήμα 6: Συγχρονισμός δεδομένων με Elasticsearch
Αφού διαμορφώσετε και ορίσετε τα μοντέλα με δυνατότητα αναζήτησης, εκτελέστε την εντολή για συγχρονισμό δεδομένων από τη βάση δεδομένων σας σε Elasticsearch:
php artisan scout:import "App\Models\Product"
Μόλις ολοκληρωθεί, Elasticsearch έχει ενσωματωθεί στο Laravel και μπορείτε να αρχίσετε να χρησιμοποιείτε τη δυνατότητα αναζήτησής του στην εφαρμογή σας.