Sakinisha na Usanidi Elasticsearch ndani Laravel

Ili kusakinisha na kusanidi Elasticsearch katika Laravel, fuata hatua hizi:

Hatua ya 1: Sakinisha Elasticsearch

Kwanza, unahitaji kusakinisha Elasticsearch kwenye seva yako au kutumia Elasticsearch huduma ya wingu kama Elastic Cloud. Tembelea Elasticsearch tovuti rasmi ili kupakua toleo linalofaa na kufuata maagizo ya ufungaji.

Hatua ya 2: Sakinisha Elasticsearch Package kwa Laravel

Ifuatayo, sakinisha Elasticsearch kifurushi cha Laravel. Kuna vifurushi mbalimbali vinavyotumia Elasticsearch, Laravel lakini kifurushi kimoja maarufu ni " Laravel Scout ". Ili kusakinisha Laravel Scout, fungua terminal na utekeleze amri ifuatayo:

composer require laravel/scout

Hatua ya 3: Sanidi Elasticsearch ndani Laravel

Baada ya kusakinisha Laravel Scout, unahitaji kuisanidi ili itumike Elasticsearch kama injini chaguomsingi ya utafutaji. Fungua faili ya .env Laravel na uongeze vigezo vifuatavyo vya usanidi:

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

Ambapo SCOUT_DRIVER inafafanua injini ya utafutaji inayotumia Laravel Scout na SCOUT_ELASTICSEARCH_HOSTS kubainisha Elasticsearch URL ambayo Scout itaunganishwa nayo.

Hatua ya 4: Kukimbia Migration

Ifuatayo, endesha ili migration kuunda jedwali "linaweza kutafutwa" la miundo unayotaka kutafuta Elasticsearch. Tumia amri ifuatayo:

php artisan migrate

Hatua ya 5: Bainisha Muundo na Upe Maelezo Yanayotafutwa

Hatimaye, katika kielelezo unachotaka kutafuta, ongeza Searchable sifa na ufafanue maelezo yanayoweza kutafutwa kwa kila modeli. Kwa mfano:

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  
        ];  
    }  
}  

Hatua ya 6: Sawazisha Data na Elasticsearch

Baada ya kusanidi na kufafanua miundo inayoweza kutafutwa, endesha amri ya kusawazisha data kutoka kwa hifadhidata yako hadi Elasticsearch:

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

Baada ya kukamilika, Elasticsearch imeunganishwa kwenye Laravel, na unaweza kuanza kutumia kipengele chake cha utafutaji katika programu yako.