suchen
HeimBackend-EntwicklungPHP-TutorialVerwenden von Solarium mit Solr zur Suche - Solarium und GUI

Using Solarium with SOLR for Search - Solarium and GUI

Dieser Artikel, der zweite in einer vierteiligen Reihe, Details mit Solarium mit Apache-Solr für Suchfunktionen. Der erste Teil umfasste Kernkonzepte, Installation und Setup. Dieser Teil konzentriert sich auf die Solariuminstallation, das Erstellen einer Beispielanwendung, die Besiedlung des Suchindex und die Vorbereitung auf Suchanfragen.

Schlüsselkonzepte:

  • Solarium liefert eine Abstraktionsschicht über Solr und vereinfacht die Entwicklung, indem Solr als lokale Suchimplementierung erscheinen.
  • Solarium anschließen müssen Host-, Port- und Pfaddetails für den Solr -Server bereitstellen.
  • Solarium vereinfacht das Hinzufügen, Aktualisieren und Löschen von Dokumenten mithilfe von Update -Abfrageinstanzen. Updates werden durch "Neueinstellung" Dokumente mit derselben eindeutigen Kennung behandelt.
  • Dieser Leitfaden durchläuft die Erstellung von Anwendungen, die Solariumkonfiguration, die Ping -Abfragen, die Abgabe von Beispieldaten und die Suchindexpopulation. Es zeigt auch das Erstellen eines Suchformulars mit Laravels Blattvorlagen.

Anwendungserstellung & Solarium Installation:

Erstellen Sie eine neue Laravel -Anwendung:

composer create-project laravel/laravel movie-search --prefer-dist

Machen Sie das Verzeichnis app/storage beschreibbar. Installieren Sie Solarium über Komponist:

"solarium/solarium": "dev-develop"

(Alternativ herunterladen oder klonen von Github.) Fügen Sie diese Ihrer composer.json -Datei hinzu.

Solariumkonfiguration:

Erstellen einer Konfigurationsdatei (app/config/solr.php):

return array(
    'host'      => '127.0.0.1',
    'port'      => 8983,
    'path'      => '/solr/',
);
Der Einfachheit halber erstellen Sie eine Solarium -Client -Instanz als Controller -Eigenschaft (

): app/controllers/HomeController.php

    protected $client;

    public function __construct()
    {
        $this->client = new \Solarium\Client(Config::get('solr'));
    }
(In einer größeren Laravel -App würde ein Dienstleister bevorzugt.)

Ping -Abfragen & Beispieldaten:

Verwenden Sie Ping -Abfragen, um die Solr -Zugänglichkeit zu überprüfen:

$ping = $client->createPing();
try {
    $result = $client->ping($ping);
} catch (Solarium\Exception $e) {
    // Handle SOLR inaccessibility
}
Eine Beispielfilm -CSV -Datei (mit ~ 2000 Filmen) ist erforderlich. Sie können eine herunterladen oder die Rotten Tomaten -API verwenden (IMDB -Daten sind ebenfalls verfügbar, aber weniger bequem).

Hinzufügen, Aktualisieren und Löschen von Dokumenten:

Hinzufügen eines Dokuments:

$update = $client->createUpdate();
$doc = $update->createDocument();
$doc->id = 123;
$doc->title = 'Some Movie';
$update->addDocument($doc);
$update->addCommit();
$result = $client->update($update);
Aktualisierung erfordert eine erneute Einführung mit derselben ID. Löschen verwendet

: addDeleteQuery

$update = $client->createUpdate();
$update->addDeleteQuery('id:123'); // Or use wildcards: 'title:test*'
$update->addCommit();
$result = $client->update($update);

Fülle des Suchindex:

Erstellen Sie einen Laravel -Befehl (

), um die CSV -Daten zu importieren. Verwenden Sie in php artisan command:make PopulateSearchIndexCommand die Methode app/commands/PopulateSearchIndexCommand.php, um das CSV zu lesen, Solariumdokumente zu erstellen und zu indizieren. (Das angegebene Code -Beispiel zeigt diesen Vorgang an.) Führen Sie den Befehl aus: fire(). php artisan search:populate

Das Suchformular (Laravel Blade):

Erstellen Sie ein Suchformular in

: app/views/home/index.blade.php

composer create-project laravel/laravel movie-search --prefer-dist

(Ein grundlegendes Layout in app/views/layouts/default.blade.php und Routing in app/routes.php wird ebenfalls benötigt, wie im ursprünglichen Beispiel gezeigt.)

Schlussfolgerung:

Dieser Artikel legt die Bühne für den Aufbau eines Suchmechanismus mit Solarium und Solr. Der nächste Teil umfasst die Implementierung der tatsächlichen Suchfunktion. Der vorgesehene FAQS -Abschnitt wurde angesichts der bereits angegebenen detaillierten Erklärung weggelassen.

Das obige ist der detaillierte Inhalt vonVerwenden von Solarium mit Solr zur Suche - Solarium und GUI. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
11 beste PHP -URL -Shortener -Skripte (kostenlos und Premium)11 beste PHP -URL -Shortener -Skripte (kostenlos und Premium)Mar 03, 2025 am 10:49 AM

Lange URLs, die oft mit Schlüsselwörtern und Tracking -Parametern überfüllt sind, können Besucher abschrecken. Ein URL -Verkürzungsskript bietet eine Lösung, die präzise Links erstellt, die ideal für soziale Medien und andere Plattformen sind. Diese Skripte sind für einzelne Websites a wertvoll

Arbeiten mit Flash -Sitzungsdaten in LaravelArbeiten mit Flash -Sitzungsdaten in LaravelMar 12, 2025 pm 05:08 PM

Laravel vereinfacht die Behandlung von temporären Sitzungsdaten mithilfe seiner intuitiven Flash -Methoden. Dies ist perfekt zum Anzeigen von kurzen Nachrichten, Warnungen oder Benachrichtigungen in Ihrer Anwendung. Die Daten bestehen nur für die nachfolgende Anfrage standardmäßig: $ Anfrage-

Erstellen Sie eine React -App mit einem Laravel -Back -Ende: Teil 2, reagierenErstellen Sie eine React -App mit einem Laravel -Back -Ende: Teil 2, reagierenMar 04, 2025 am 09:33 AM

Dies ist der zweite und letzte Teil der Serie zum Aufbau einer Reaktionsanwendung mit einem Laravel-Back-End. Im ersten Teil der Serie haben wir eine erholsame API erstellt, die Laravel für eine grundlegende Produktlistenanwendung unter Verwendung von Laravel erstellt hat. In diesem Tutorial werden wir Dev sein

Vereinfachte HTTP -Reaktion verspottet in Laravel -TestsVereinfachte HTTP -Reaktion verspottet in Laravel -TestsMar 12, 2025 pm 05:09 PM

Laravel bietet eine kurze HTTP -Antwortsimulationssyntax und vereinfache HTTP -Interaktionstests. Dieser Ansatz reduziert die Code -Redundanz erheblich, während Ihre Testsimulation intuitiver wird. Die grundlegende Implementierung bietet eine Vielzahl von Verknüpfungen zum Antworttyp: Verwenden Sie Illuminate \ Support \ facades \ http; Http :: fake ([ 'Google.com' => 'Hallo Welt',, 'github.com' => ['foo' => 'bar'], 'Forge.laravel.com' =>

Curl in PHP: So verwenden Sie die PHP -Curl -Erweiterung in REST -APIsCurl in PHP: So verwenden Sie die PHP -Curl -Erweiterung in REST -APIsMar 14, 2025 am 11:42 AM

Die PHP Client -URL -Erweiterung (CURL) ist ein leistungsstarkes Tool für Entwickler, das eine nahtlose Interaktion mit Remote -Servern und REST -APIs ermöglicht. Durch die Nutzung von Libcurl, einer angesehenen Bibliothek mit Multi-Protokoll-Dateien, erleichtert PHP Curl effiziente Execu

12 Beste PHP -Chat -Skripte auf Codecanyon12 Beste PHP -Chat -Skripte auf CodecanyonMar 13, 2025 pm 12:08 PM

Möchten Sie den dringlichsten Problemen Ihrer Kunden in Echtzeit und Sofortlösungen anbieten? Mit Live-Chat können Sie Echtzeitgespräche mit Kunden führen und ihre Probleme sofort lösen. Sie ermöglichen es Ihnen, Ihrem Brauch einen schnelleren Service zu bieten

Ankündigung von 2025 PHP Situation SurveyAnkündigung von 2025 PHP Situation SurveyMar 03, 2025 pm 04:20 PM

Die 2025 PHP Landscape Survey untersucht die aktuellen PHP -Entwicklungstrends. Es untersucht Framework -Nutzung, Bereitstellungsmethoden und Herausforderungen, die darauf abzielen, Entwicklern und Unternehmen Einblicke zu geben. Die Umfrage erwartet das Wachstum der modernen PHP -Versio

Benachrichtigungen in LaravelBenachrichtigungen in LaravelMar 04, 2025 am 09:22 AM

In diesem Artikel werden wir das Benachrichtigungssystem im Laravel -Web -Framework untersuchen. Mit dem Benachrichtigungssystem in Laravel können Sie Benachrichtigungen an Benutzer über verschiedene Kanäle senden. Heute werden wir diskutieren, wie Sie Benachrichtigungen OV senden können

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Dreamweaver Mac

Dreamweaver Mac

Visuelle Webentwicklungstools