Recherche de base dans Laravel avec Elasticsearch

La recherche de base dans Laravel with Elasticsearch est une fonctionnalité fondamentale lors de l'intégration Elasticsearch dans votre Laravel projet. Pour effectuer une recherche de base, procédez comme suit :

Étape 1 : Créer Model et définir une description consultable

Tout d'abord, créez un fichier model in Laravel et définissez la description consultable pour ce fichier model. La description consultable est un tableau contenant les champs dans lesquels vous souhaitez effectuer une recherche Elasticsearch.

Par exemple, dans le Product  modèle, vous souhaitez effectuer une recherche basée sur les champs name et description  .

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

Étape 2 : Rechercher des données

Après avoir défini la description de recherche dans model, vous pouvez utiliser la search() méthode pour effectuer une recherche de données dans Elasticsearch.

$keyword = "Laravel";  
  
$results = Product::search($keyword)->get();  

La search($keyword) méthode recherchera les enregistrements contenant le mot-clé " Laravel " dans les champs name et description du fichier Product model.

Étape 3: Afficher les résultats

Après avoir effectué la recherche, vous pouvez utiliser les résultats pour afficher des informations à l'utilisateur.

foreach($results as $result) {  
    echo $result->name. ": ". $result->description;  
    // Display product information or other search data  
}  

Cela vous permet de présenter des résultats de recherche de base à partir Elasticsearch de votre Laravel application.