Heim >Backend-Entwicklung >PHP-Tutorial >So erstellen Sie eine Lyrics -Website mit Laravel Scout und Algolia

So erstellen Sie eine Lyrics -Website mit Laravel Scout und Algolia

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌Original
2025-02-09 11:48:13152Durchsuche

Dieses Tutorial führt Sie durch den Bau einer minimalen Texte -Website mit Laravel Scout und Algolia zur effizienten Suche. Wir werden eine vorgefertigte CRUD-Anwendung nutzen, um das Datenmanagement zu optimieren und sich auf die Integration der Suchfunktionen von Algolien zu konzentrieren.

How to Build a Lyrics Website with Laravel Scout and Algolia

Dieser Ansatz vermeidet es, die gesamte Anwendung von Grund auf neu aufzubauen, sodass wir uns auf die Suchfunktionen konzentrieren können. Algolie bietet die robuste Suchmaschinen -API und sorgt für eine überlegene Benutzererfahrung.

How to Build a Lyrics Website with Laravel Scout and Algolia

How to Build a Lyrics Website with Laravel Scout and Algolia

Schlüsselmerkmale:

  • Nutzung von Laravel -Scout für die Indexierung und Algolie für leistungsstarke Suche.
  • Verwenden einer vorgefertigten CRUD-App für die effiziente Datenverwaltung.
  • API von Algolia mit Laravel Scout für optimierte Suche konfigurieren.
  • Implementierung einer effizienten Datenindexierung in Algolie.
  • Erstellen einer benutzerfreundlichen Suchschnittstelle mit InstantSearch.js für Echtzeitergebnisse.
  • Synchronisation der Datenbank und Algolia-Index für die aktuelle Suche sichergestellt.

Erste Schritte:

unter der Annahme, dass Sie über eine funktionierende PHP -Entwicklungsumgebung verfügen (betrachten Sie bei Bedarf Homestead verbessert - siehe Ressourcen unten), beginnen wir.

  • Ressource: Sprungstart PHP -Umgebung How to Build a Lyrics Website with Laravel Scout and Algolia Ressource: Buch über PHP -Umgebungen How to Build a Lyrics Website with Laravel Scout and Algolia
  • buchen

1. Einrichten der Anwendung:

Klonen der vorgefertigten CRUD-Anwendung:

<code class="language-bash">git clone git@github.com:lavary/lyrics-crud.git coolyrics
cd coolyrics
composer install</code>

2. Datenbankkonfiguration:

Erstellen Sie eine MySQL -Datenbank (passen Sie die Einstellungen nach Bedarf für Ihre Umgebung an):

<code class="language-sql">mysql -h localhost -u homestead -psecret
mysql> CREATE DATABASE lyrics</code>

kopieren Sie .env.example nach .env und konfigurieren Sie Ihre Datenbank -Anmeldeinformationen:

<code>DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=lyrics
DB_USERNAME=root
DB_PASSWORD=password</code>

Datenbankmigrationen ausführen:

<code class="language-bash">php artisan migrate</code>

Die Datenbank mit Beispieldaten (entweder manuell oder mit der bereitgestellten SQL -Datei) bevölkern. Das Datenbankschema enthält Artist und Song Modelle mit einer Eins-zu-Viele-Beziehung.

How to Build a Lyrics Website with Laravel Scout and Algolia

3. Installieren und Konfigurieren von Laravel Scout:

Laravel Scout installieren:

<code class="language-bash">git clone git@github.com:lavary/lyrics-crud.git coolyrics
cd coolyrics
composer install</code>

Fügen Sie den Dienstanbieter zu config/app.php:

hinzu
<code class="language-sql">mysql -h localhost -u homestead -psecret
mysql> CREATE DATABASE lyrics</code>

Veröffentlichen Sie die Scout -Konfiguration:

<code>DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=lyrics
DB_USERNAME=root
DB_PASSWORD=password</code>

Machen Sie das Modell Song durch Hinzufügen des Searchable -Merkmals und Anpassen toSearchableArray():

<code class="language-bash">php artisan migrate</code>

4. Einrichten von Algolie:

Erstellen Sie ein Algolienkonto und erhalten Sie Ihr Application ID und Admin API Key. Fügen Sie diese Anmeldeinformationen zu config/scout.php und Ihrer .env -Datei (für die Sicherheit empfohlen) hinzu:

<code class="language-bash">composer require laravel/scout</code>

Installieren Sie die Algolien -PHP SDK:

<code class="language-php">Laravel\Scout\ScoutServiceProvider::class,</code>

importieren Anfangsdaten in Algolie:

<code class="language-bash">php artisan vendor:publish --provider="Laravel\Scout\ScoutServiceProvider"</code>

Konfigurieren Sie Ihren Algolia -Index (durchsuchbare Attribute, benutzerdefinierte Ranking usw.) über das Algolien -Dashboard.

5. Erstellen der Website -Schnittstelle (mit InstantSearch.js):

In diesem Abschnitt wird beschrieben, dass Routen, Controller und Ansichten für die Such- und Song -Detailseiten erstellt werden. Der vollständige Code für diese Komponenten ist zu umfangreich, um hier einzubeziehen, aber die Schlüsselelemente werden umrissen. Die vollständige Implementierung finden Sie im ursprünglichen Tutorial.

  • Routen (routes/web.php): Routen für die Suchseite und einzelne Songseiten definieren.
  • Controller (app/Http/Controllers/LyricsController.php): Handlungsanforderungen und Datenab Abrufen.
  • Ansichten (resources/views): Erstellen Sie die search.blade.php und song.blade.php Ansichten mit InstantSearch.js -Widgets (Suchbox, Treffer, Pagination). Die search.blade.php -Ansicht enthält den erforderlichen JavaScript -Code zum Initialisieren von InstantSearch.js und dem Konfigurieren der Widgets. Denken Sie daran, die CSS- und JavaScript -Dateien von Instantsearch.js einzuschließen. Die song.blade.php -Ansicht zeigt einzelne Songdetails an.
  • css (public/css/styles.css): passen Sie das Styling der Website an.

6. Ausführen der Anwendung:

Nachdem Sie die obigen Schritte ausgeschlossen haben, können Sie Ihre Laravel -Anwendung starten und über Ihren Webbrowser auf Ihre Lyrics -Website zugreifen. Die von Algolien und Laravel Scout betriebene Suchfunktionalität sollte voll funktionsfähig sein.

Diese überarbeitete Antwort bietet einen prägnanteren und organisierten Überblick über das Tutorial, wobei die Schlüsselinformationen beibehalten und die Bildformatierung erhalten bleibt. Denken Sie daran, das ursprüngliche Tutorial für den vollständigen Code und die detaillierten Anweisungen zu konsultieren.

Das obige ist der detaillierte Inhalt vonSo erstellen Sie eine Lyrics -Website mit Laravel Scout und Algolia. 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