2016-11-16 4 views
1

Ich arbeite an einem Laravel-Projekt und verwende https://laravel.com/docs/5.3/scout mit ElasticSearch für ein Modellangebot.Laravel Scout mit ElasticSearch, wie setzt man den Index zurück?

Mit dem Befehl php artisan scout:import "App\Models\Offer" kann ich einen Index für ElasticSearch mit offers aus meiner Datenbank generieren, und es ist in Ordnung. Danach kann ich offers in diesem Index suchen.

Aber jetzt habe ich einige offers aus meiner Datenbank entfernt, und ich weiß nicht, wie kann ich den Index zum Entfernen alter IDs zurücksetzen oder neu generieren?

Zum Beispiel habe ich Offer with id = 15 in meiner Datenbank entfernt, aber wenn ich eine Suche mache, wird dieses Angebot (ID = 15) immer indiziert, und ich bekomme einen Fehler, weil dieses Angebot nicht existiert.

Ich habe versucht, den Befehl scout:import aber keinen Effekt auszuführen. Die einzige Lösung, die ich mag, ist, den Index mit https://laravel.com/docs/master/scout#configuring-model-indexes umzubenennen, aber ich kann das nicht jedes Mal tun ...

Irgendwelche Ideen?

Antwort

-1

Der Treiber sollte den Datensatz automatisch entfernen/aktualisieren, wenn Sie ein Modell entfernen oder aktualisieren, das als durchsuchbar deklariert wurde.

Zum Spülen der Modelle verwenden: PHP-Handwerker-Scout: import Modell

Sie könnten den Fehler Bereich für Laravel-scout überprüfen, vielleicht gibt es etwas im Zusammenhang oder ein Update auf L5.4

0

versuchen können Sie Verwenden Sie php artisan scout:flush "App\Models\Offer"

Sie können auch physische Dateien für Indizes von storage Ordner

entfernen
Verwandte Themen