Ricerca di base Laravel con Elasticsearch

La ricerca di base in Laravel with Elasticsearch è una caratteristica fondamentale quando si integra Elasticsearch nel Laravel progetto. Per eseguire una ricerca di base, attenersi alla seguente procedura:

Passaggio 1: creare Model e definire una descrizione ricercabile

Per prima cosa, crea un model in Laravel e definisci la descrizione ricercabile per questo model. La descrizione ricercabile è un array contenente i campi in cui si desidera eseguire la ricerca Elasticsearch.

Ad esempio, nel Product  modello si desidera eseguire la ricerca in base ai campi name e 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  
        ];  
    }  
}  

Passaggio 2: ricerca dei dati

Dopo aver definito la descrizione ricercabile in model, è possibile utilizzare il search() metodo per eseguire la ricerca dei dati in Elasticsearch.

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

Il search($keyword) metodo cercherà i record contenenti la parola chiave " Laravel " nei campi name e description del file Product model.

Passaggio 3: visualizzare i risultati

Dopo aver eseguito la ricerca, è possibile utilizzare i risultati per visualizzare le informazioni per l'utente.

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

Ciò ti consente di presentare i risultati di ricerca di base Elasticsearch nella tua Laravel applicazione.