ในการติดตั้งและกำหนดค่า Elasticsearch ใน Laravel ให้ทำตามขั้นตอนเหล่านี้:
ขั้นตอนที่ 1: ติดตั้ง Elasticsearch
ประการแรก คุณต้องติดตั้ง Elasticsearch บนเซิร์ฟเวอร์ของคุณหรือใช้ Elasticsearch บริการคลาวด์ เช่น 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
SCOUT_DRIVER
กำหนดเครื่องมือค้นหาที่ Laravel Scout ใช้และ SCOUT_ELASTICSEARCH_HOSTS
ระบุ Elasticsearch URL ที่ลูกเสือจะเชื่อมต่อ ที่ไหน
ขั้นตอนที่ 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 และคุณสามารถเริ่มใช้คุณลักษณะการค้นหาในแอปพลิเคชันของคุณ