Aktivieren der Volltextsuche mit Laravel Scout (2023)

ZehnLaravel-FrameworkEs ist zu einer wichtigen Ressource für Entwickler geworden, die Webdienste erstellen.

Als Open-Source-Tool bietet Laravel eine Reihe großartiger Funktionen, die es Entwicklern ermöglichen, leistungsstarke und funktionale Anwendungen zu erstellen.

Dazu gehört auchLaravel-Scout, eine Bibliothek zum Verwalten von Anwendungssuchindizes. Seine Flexibilität ermöglicht es Entwicklern, die Konfiguration zu optimieren und sie auf Algolia, Meilisearch, MySQL oder auszuführenPostgres-TreiberWählen Sie einen Speicherindex aus.

In diesem Artikel werfen wir einen genaueren Blick auf dieses Tool und zeigen Ihnen, wie Sie den Treiber verwenden, um Ihrer Laravel-App eine Volltextsuche hinzuzufügen. Sie konfigurieren eine Laravel-Demo-App zum Speichern von Modelleisenbahnnamen und fügen dann mit Laravel Scout eine Suche zur App hinzu.

Benötigen

Zur Anmeldung müssen Sie mitbringen:

  • Auf Ihrem Computer sollte ein PHP-Compiler installiert sein. Dieses Tutorial verwendet PHP Version 8.1.
  • Installieren Sie Docker Engine oder Docker Desktop auf Ihrem Computer
  • EINSAlgolia-云-KontoSie können kostenlos erstellen

So installieren Sie Scout in einem Laravel-Projekt

Um Scout nutzen zu können, müssen Sie zunächst eine Laravel-Anwendung erstellen und die Suchfunktion darin integrieren. Das Laravel-Scout-Bash-Skript enthält Befehle zum Erstellen von Laravel-Anwendungen in einem Docker-Container. Durch die Verwendung von Docker müssen Sie keine zusätzliche Backend-Software wie die MySQL-Datenbank installieren.

Das Laravel-Crawl-Skript verwendet die Bash-Skriptsprache, daher müssen Sie es in einer Linux-Umgebung ausführen. Wenn Sie Windows verwenden, benötigen Sie das Windows-Subsystem für Linux (WSL).Aufbau.

Wenn Sie WSL verwenden, führen Sie den folgenden Befehl im Terminal aus, um Ihre bevorzugte Linux-Distribution festzulegen.

wsl -s kostenlos

Navigieren Sie dann zu dem Speicherort auf Ihrem Computer, an dem Sie das Projekt speichern möchten. Das Laravel-Crawl-Skript erstellt hier ein Projektverzeichnis. Im folgenden Beispiel wird das Laravel-Crawl-Skript auf dem ausgeführtDesktop-Verzeichniserstellen.

CD/Kanzel

Führen Sie den folgenden Befehl aus, um das Laravel-Erkennungsskript auszuführen. Es wird eine Docker-Anwendung mit dem erforderlichen Mustercode erstellt.

curl -s https://laravel.build/laravel-scout-app | ich schreie

Seitdem hast du dich verändertCD Laravel-Scout-Appin Ihrem Verzeichnis. Führen Sie dann den Befehl auswegsegelnStarten Sie den Docker-Container für Ihre Anwendung im Projektordner.

Vorsicht:Bei vielen Linux-Distributionen müssen Sie möglicherweise den folgenden Befehl ausführenSudoLaufen Sie, um mehr Privilegien zu erhalten.

./vendor/bin/ Segel setzen

Möglicherweise erhalten Sie eine Fehlermeldung:

Aktivieren der Volltextsuche mit Laravel Scout (1)

Um dies zu beheben, verwenden Sie eine VariableAnwendungsportauf dem Port im Befehlwegsegelnangeben:

APP_PORT=3001 ./vendor/bin/sail up

Führen Sie dann den folgenden Befehl aus, um die Anwendung über Artisan auf dem PHP-Server auszuführen.

PHP-Crafting-Service
Aktivieren der Volltextsuche mit Laravel Scout (2)

Navigieren Sie in Ihrem Browser zu der Anwendung, die unter http://127.0.0.1:8000 ausgeführt wird. Die Anwendung zeigt die Laravel-Willkommensseite über den Standardpfad an.

Aktivieren der Volltextsuche mit Laravel Scout (3)

So fügen Sie Laravel Scout zu Ihrer App hinzu

Geben Sie im Terminal do einKomponistAktivieren Sie den PHP-Paketmanager und fügen Sie Laravel Scout zu Ihrem Projekt hinzu.

Komponist benötigt Laravel/Scout

Anschließend veröffentlichen Sie die Scout-Konfigurationsdatei mit dem Befehl „vendor:publish“. Dieser Befehl erstellt eine Konfigurationsdateiscout.phpIch binKonfigurationsverzeichnisVeröffentlichen Sie es in Ihrer App.

Handwerkeranbieter php:publish --provider="Laravel\Scout\ScoutServiceProvider"

Wechseln Sie nun die Kesselplatte.envdamit sie einen angemessenen Wert habenScout-WarteschlangeMach es an.

WertScout-WarteschlangeErmöglicht Scout, Vorgänge in die Warteschlange zu stellen, was zu schnelleren Reaktionszeiten führt. Ohne diesen Wert würde sich der Crawler-Treiber wie folgt verhaltenschöne SucheNeue Dateien nicht sofort anzeigen.

SCOUT_QUEUE=true

Ändern Sie auch die VariableDatenbankhostinnen.env-Dateisodass es zum Herunterladen auf Ihren lokalen Host verweistMySQL-DatenbankWird in Docker-Containern verwendet.

DB_HOST=127.0.0.1

So markieren Sie Modelle und erstellen Indizes

Standardmäßig durchsucht Scout das Datenmodell nicht. Sie müssen das Modell explizit als durchsuchbar kennzeichnen, indem Sie das Modell eingebenLaravel\Scout\SearchableNutzung von Immobilien.

Zuerst erstellen Sie ein Datenmodell für einenZugDemo-App und markieren Sie sie als durchsuchbar.

So erstellen Sie ein Modell

für den EinsatzZugSie möchten für jeden verfügbaren Datenverkehr einen Platzhalternamen speichern.

Führen Sie den folgenden Artisan-Befehl aus, um die Migration zu erstellen und zu benennenTabelle create_train.

php artisan make:migrate create_trains_table
Aktivieren der Volltextsuche mit Laravel Scout (4)

Migrationen werden in einer Datei erstellt, deren Name aus dem angegebenen Namen und dem aktuellen Zeitstempel besteht.

Öffnen Sie die Migrationsdatei, die sich im Verzeichnis befindetDatenbank/Migration/ausschlafen

Um eine Kopfspalte hinzuzufügen, fügen Sie nach der Spalte den folgenden Code einAUSWEIS()in Zeile 17. Dieser Code fügt eine Kopfspalte hinzu.

$table->string('Titel');

Führen Sie den folgenden Befehl aus, um die Migration anzuwenden.

PHP-Craft-Migration
Aktivieren der Volltextsuche mit Laravel Scout (5)

Nachdem Sie die Datenbankmigration durchgeführt haben, erstellen Sie eine Datei mit dem Namentrain.phpin der RegistryApp/Modelle/.

So fügen Sie das LaravelScoutSearchable-Attribut hinzu

Wählen Sie ein Modell ausZugum mithilfe von Attributen zu suchenLaravel\Scout\Searchableim Modell wie unten gezeigt.

Darüber hinaus müssen Sie den Suchindex konfigurieren, indem Sie die Methode aufrufendurchsuchbarDurch das Überschreiben des standardmäßigen Scout-Verhaltens wird das Modell so geändert, dass es mit dem Namen des Modellarrays übereinstimmt.

Fügen Sie der Datei also den folgenden Code hinzutrain.phpUnten ist der Code aus dem vorherigen Block.

/** * Ruft den Modellindexnamen ab. * * @return string */ public function searchableAs() { return 'trains_index'; }}

So verwenden Sie Algolia in Scout

Für Ihre erste Volltextsuche mit Laravel Scout verwenden SieAlgerischer Reiseführerverwenden. Algolia ist eine Software-as-a-Service (SaaS)-Plattform für Big Data Mining. Es bietet ein webbasiertes Dashboard, mit dem Entwickler ihre Suchindizes verwalten können, sowie eine leistungsstarke API, auf die über ein Software Development Kit (SDK) mit Ihrer bevorzugten Programmiersprache zugegriffen werden kann.

In einer Laravel-Anwendung jaAlgolia-Client-Paketdla php.

So richten Sie Algerien ein

Zuerst müssen Sie Algolia bauenPHP-Suchclient-PaketFür Ihre App installieren.

Führen Sie dazu den folgenden Befehl aus.

Composer benötigt algolia/algoliasearch-client-php

Komm schon, du musst.env-DateiErstellen.

Gehen Sie über Ihren Browser zum Algolia-Dashboard, um Ihre Anwendungs-ID und Ihren API-Schlüssel zu erhalten.

Klicken Sie unten in der linken Seitenleiste auf das SymbolIdee"beiseite legen"Idee"nehmen.

Klicken Sie auf der Seite „Einstellungen“ auf die SchaltflächeGruppen und ZugriffexistiertAPI-SchlüsselSehen Sie sich Ihren Algolia-Kontoschlüssel an.

Aktivieren der Volltextsuche mit Laravel Scout (6)

Speichern Sie auf der Seite „API-Schlüssel“.AnmeldenummerICHAdmin-API-SchlüsselMit diesen Anmeldeinformationen authentifizieren Sie die Verbindung zwischen Ihrer Laravel-Anwendung und Algolia.

Aktivieren der Volltextsuche mit Laravel Scout (7)

Fügen Sie mit dem Code-Editor den folgenden Code zur .env-Datei hinzu und ersetzen Sie die Platzhalter durch das entsprechende Algolia-API-Geheimnis.

ALGOLIA_APP_ID=APPLICATION_IDALGOLIA_SECRET=ADMIN_API_KEY

Ersetzen Sie auch die VariablePfadfinderführerDer aus dem folgenden Code erhaltene WertsuchenexistiertSchmerzÄndern. Wenn Sie diesen Wert ändern, verwendet Scout den Algolia-Treiber.

SCOUT_DRIVER=Algoien

So erstellen Sie einen Anwendungscontroller

Erstellung im Verzeichnisapplication/http/controllers/jedes DokumentTrainSearchController.phpSpeichern Sie den Controller für die Anwendung. Der Controller zeigt die Daten an und fügt sie dem Modell hinzuZugErgänzen.

Fügen Sie der Datei den folgenden Codeblock hinzuTrainSearchController.phpErstellen Sie einen Controller.

has('αναζήτηση τίτλου')){ $trains = Train::search($request->αναζήτηση τίτλου) ->paginate(6) ; }else{ $trains = Train::paginate(6); } return view('Zugsuche',compact('trains')); } /** * 获取模型的索引名称. * * @return string */ public function create(Request $request) { $this->validate($request,['title'=>'required']); $trains = Train::create($request->all());返回(); }}

So erstellen Sie Anwendungspfade

In diesem Schritt erstellen Sie die zur Anzeige verwendeten Strecken und fügen neue Züge zur Datenbank hinzu.

Öffnen Sie Ihre Dateitrasy/web.phpund ersetzen Sie den vorhandenen Code durch den folgenden Block.

name('listy-item');Route::post('create-item', [TrainSearchController::class, 'create']) -> name('create-item');

Der obige Code definiert zwei Routen zur Anwendung. BenötigenIch bekommefür Routen/ZuglisteListe aller gespeicherten Zugdaten. BenötigenPost-für Routen/Projekt erstellenErstellen Sie neue Zugdaten.

So erstellen Sie App-Ansichten

Erstellen Sie Dateien im VerzeichnisRessourcen / Ausblick /und nenne sietrain search.blade.phpDiese Datei zeigt die Benutzeroberfläche für die Suchfunktion.

Fügen Sie den Inhalt des folgenden Codeblocks in die Datei eintrain search.blade.phpErstellen Sie eine Seite für die Suchfunktion.




 Laravel-Suchbeispiel Laravel Scout Algolia 

Laravel-Volltextsuche mit Scout


@if(Anzahl($Fehler))
UPS!In Ihrem Eintrag ist ein Fehler aufgetreten.
    @foreach($errors->all() ως $error)
  • {{$error}}
  • @endforeach
@end wenn
{{$bugs->first('title') }}
Zugmanagement
@if($trains->number()) @foreach($trains ως $key => $position)@endforeach @else@end wenn
Ausweis Zugtitel Erstelldatum AKTUALISIERT
{{ ++$key }} {{ $position->title }} {{ $item->created_at }} {{ $item->updated_at }}
Es gibt keine Informationen über die Züge
{{ $trains->links() }}

Der obige HTML-Code enthält ein Formularelement mit einem Dateneingabefeld und einer Schaltfläche zur Eingabe des Zugtitels vor dem Speichern in der Datenbank. Der Code enthält auch eine HTML-Tabelle, die enthältAusweis, ZehnTitel, ZehnErstellungszeitpunktICHUpdatezeitRegistrieren eines Zuges in der Datenbank.

So verwenden Sie die Algolia-Suchmaschine

Um auf diese Seite zuzugreifen, navigieren Sie mit Ihrem Browser dorthinhttp://127.0.0.1:8000/ trainlist.

Aktivieren der Volltextsuche mit Laravel Scout (8)

Die Datenbank ist derzeit leer. Geben Sie daher den Titel des Testzugs in das Textfeld ein und klicken SieErstellen Sie einen neuen ZugKlicken Sie, um es zu speichern.

Aktivieren der Volltextsuche mit Laravel Scout (9)

Um die Suchfunktion zu nutzen, geben Sie das Schlüsselwort aus dem Titel des gespeicherten Zuges in das Textfeld einGeben Sie einen Suchtitel eineingeben und klickenSuchen.

Wie im Bild unten gezeigt, werden nur Suchanfragen angezeigt, die das Schlüsselwort im Titel enthalten.

Aktivieren der Volltextsuche mit Laravel Scout (10)

Schöne Suche mit Laravel Scout

Meilisearch ist eine Open-Source-Suchmaschine, die sich auf Geschwindigkeit, Effizienz und ein verbessertes Entwicklererlebnis konzentriert. Es teilt einige Funktionen mit Algolia und nutzt dieselben Algorithmen, Datenstrukturen und Forschungsergebnisse – wenn auch auf unterschiedliche WeiseEine Programmiersprache.

Entwickler können Meilisearch-Instanzen in ihrer lokalen Infrastruktur oder in der Cloud erstellen und hosten. Meilisearch bietet auch ein Beta-Cloud-Produkt ähnlich wie Algolia für Entwickler an, die das Produkt ohne Infrastrukturmanagement nutzen möchten.

Für dieses Tutorial verfügen Sie bereits über eine lokale Instanz von Merit Search auf Ihrem ComputerDocker-ContainerAktion. Sie erweitern nun die Funktionalität von Laravel Scout, um Meilisearch-Instanzen zu verwenden.

Um Beautiful Search zu Ihrer Laravel-Anwendung hinzuzufügen, führen Sie den folgenden Befehl in Ihrem Projektterminal aus.

Der Compiler benötigt meilisearch/meilisearch-php

muss als nächstes dran sein.env-DateiÄndern Sie, um sie zu konfigurieren.

ErsatzvariablePfadfinderführer,MEILISEARCH_HOSTICHMEILISEARCH_KEYinnen.env-DateiÜbergeben Sie die folgenden Variablen.

SCOUT_DRIVER=meilisearchMEILISEARCH_HOST=http://127.0.0.1:7700MEILISEARCH_KEY=Klucz blokady

TastePfadfinderführerGibt den Treiber an, den Scout verwenden sollMEILISEARCH_HOSTEine Domain, die in Ihrem Namen eine schöne Suchinstanz ausführt. Während der Entwicklung nicht erforderlich, aber für die Produktion empfohlenMEILISEARCH_KEYPlus.

Vorsicht:Kommentieren Sie Algolia ID und Secret aus, wenn Sie Meilisearch als bevorzugten Treiber verwenden.

nach Deinem Tod.env-KonfigurationWenn Sie fertig sind, verwenden Sie den folgenden Artisan-Befehl, um die bereits vorhandenen Datensätze zu indizieren.

php artisan scout: importuj „App\Models\Train“

Laravel Scout mit einer Datenbank-Engine

SchimmelDatenbank-EngineScout eignet sich am besten für Anwendungen, die kleinere Datenbanken verwenden oder kleinere Arbeitslasten verwalten. Derzeit unterstützte Datenbank-EnginesPostgreSQL oder MySQL.

Die Engine verwendet Where-Klauseln und Volltextindizes bestehender Datenbanken, um die relevantesten Suchergebnisse zu finden. Wenn Sie eine Datenbank-Engine verwenden, müssen Ihre Datensätze nicht indiziert werden.

Um die Datenbank-Engine verwenden zu können, müssen Sie über Folgendes verfügenPfadfinderführer .envLegen Sie die Variable auf die Datenbank fest.

Offen.env-DateiÄndern Sie den Wert einer Variablen in einer Laravel-AnwendungPfadfinderführer.

SCOUT_DRIVER = Datenbank

Nach der Umstellung des Treibers auf eine Datenbank wechselt Scout zur Verwendung der Datenbank-Engine für die Volltextsuche.

Collector-Engine mit Laravel Scout

Zusätzlich zur Datenbank-Engine bietet Scout auchSammelmaschine.Die Suchmaschine verwendet „Where“-Klauseln und Sammlungsfilter, um die relevantesten Suchergebnisse zu ermitteln.

Im Gegensatz zu Datenbank-Engines unterstützen Sammlungs-Engines alle relationalen Datenbanken, die Laravel unterstützt.

Sie können den Erfassungsmechanismus verwenden, indem Sie eine Umgebungsvariable festlegenPfadfinderführerexistiertsammelnOder geben Sie den Erfassungstreiber manuell in der Scout-Konfigurationsdatei an.

SCOUT_DRIVER = gesetzt

Elasticsearch-Browser

Explorer ist ein moderner Elasticsearch-Treiber für Laravel Scout, der die Leistungsfähigkeit von Elasticsearch-Abfragen nutzt. Es bietet einen kompatiblen Scout-Treiber und bietet den Vorteil, große Datenmengen in Echtzeit zu speichern, zu durchsuchen und zu analysieren. Verwendung von Elasticsearch von Laravel, um Ergebnisse in Millisekunden zurückzugeben.

Um den Elasticsearch Explorer-Treiber in einer Laravel-Anwendung zu verwenden, müssen Sie eine Vorlage herunterladendocker-compose.ymlDie Konfiguration erstellt ein Laravel-Erkennungsskript. Sie fügen zusätzliche Einstellungen für Elasticsearch hinzu und starten den Container neu.

Öffnen Sie Ihre Dateidocker-compose.ymlund ersetzen Sie den Inhalt durch Folgendes.

# Hersteller: https://laravel.com/docs/sailversion: '3'services: laravel.test: build: context: ./vendor/laravel/sail/runtimes/8.1 dockerfile: Dockerfile args: WWWGROUP: '$ {WWWGROUP}' Versionen: sail-8.1/app extra_hosts: - porty 'host.docker.internal:host-gateway': - '${APP_PORT:-80}:80' - '${VITE_PORT:-5173}:$ {VITE_PORT:-5173}' Status:WWWUSER: '${WWWUSER}' LARAVEL_SAIL: 1 XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}' XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG_stternal.-in. .:/var/www/html' Benutzeroberfläche: - Zugriff auf: - mysql - redis - meilisearch - mailhog - selen - pgsql - elasticsearch mysql: image: 'mysql/mysql-server: 8,0' porty: -ARD_D{ :-3306}:3306' 环境:MYSQL_ROOT_PASSWORD:'${DB_PASSWORD}' MYSQL_ROOT_HOST:"%" MYSQL_DATABASE:'${DB_DATABASE}' MYSQL_ROOT_PASSWORD:'${DB_PASSWORD}' MYSQL_ROOT_HOS {DB_PASSWO RD}' MYSQL _ALLOW_EMP TY_PASSWORD: 1: - 'sail-mysql:/var/lib/mysql' - './vendor/laravel/sail/database/mysql/create-testing-database.sh:/docker-entrypoint-initdb.d/10-create - sieci testen- 'database.sh': - Erweiterte Suche: Zugriff: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"] Version: 3 Monate: 5s Elasticsearch: Version: 'elasticsearch : 7.13 . 4' Status: - Discovery.type=single-node Status: - '9200:9200' - '9300:9300' Status: - 'sailelasticsearch:/usr/share/elasticsearch/data' Versionsnummer: 'kibana:7.13 .4' Status:- elasticsearch.hosts=http://elasticsearch:9200 Parameter:- '5601:5601' Status:- Gespeichert von: - elasticsearch redis:alpine: : - '${FORWARD_REDIS_PORT:-6379}:6379 ' woluminy: - sieci 'sail-redis:/data': - control stanu żagli: test: ["CMD", "redis-cli", "ping"] Status: 3 POSTGRES_USER: ' ${DB_USERNAME }' POSTGRES_PASSWORD: '${DB_PASSWORD:-secret}' woluminy: - sieci 'sailpgsql:/var/lib/postgresql/data': - Erweiterte Einstellungen: [żaCLA "pg_isready", "- q", "-d", "${DB_DATABASE }", "-U", "${DB_USERNAME}"] ' Sieci: - sprawdzanie stanu żagli: δοκιμή: ["CMD", "wget", "--no-verbose", "--spider", "http : //localhost:7700/health"] Wahrscheinlichkeit: 3 Grenzwerte: 5 Sekunden mailhog: image: 'mailhog/mailhog:latest' Status: - "${FORWARD_MAILHOG_PORT:-1025}:1025" - "${FORWARD_MAILHOG_DASHBOARD_PORT: -8025}: 8025" -gateway' 卷:- '/dev/shm:/dev/shm' 网络络:- Sailnetworks: Sail: Treiber: Bridgevolumes: Sail-Mysql: Treiber: Browser: Sail-Redis: ilisearch: Treiber Typ: Benutzt, Sailpgsql: Benutzt, Benutzt: Benutzt, Sailelasticsearch: Benutzt, Benutzt: Benutzt

Führen Sie dann den folgenden Befehl aus, um das neue Elasticsearch-Image zu laden, das dem Archiv hinzugefügt wurdedocker-compose.ymlErgänzen.

Hafenarbeiterlager

Führen Sie dann den folgenden Composer-Befehl aus, um Explorer in Ihrem Projekt zu installieren.

Composer benötigt Jeroen-G/Explorer

Sie müssen außerdem eine Konfigurationsdatei für den Ressourcenverwaltungstreiber erstellen.

Führen Sie den folgenden Artisan-Befehl aus, um die Datei zu erstellenKonfigurationsdatei für die RessourcenverwaltungSpeichern Sie die Konfiguration.

PHP-Artist-Anbieter: post --tag=explorer.config

Die oben erstellten Konfigurationsdateien werden im Verzeichnis gespeichert/Aufbauverfügbar.

in Ihrem Profilconfig/explorer.phpSie können Ihr Modell mit einem Schlüssel entsperrenIndexBericht.

'indiksy' => [ AppModelsTrain::class],

Ändern Sie den Wert der VariablenPfadfinderführerinnen.env-DateiexistiertGummibandKonfigurieren Sie Scout für die Verwendung des Explorer-Treibers.

SCOUT_DRIVER = Flexibel

Sie verwenden derzeit den ExplorerZugModelliert durch Implementierung von Ressourcenmanagementschnittstellen und -methodenabbildbar()Abdeckung

öffne die Dateitrain.phpin der RegistryAnwendungen > ModelleUnd ersetzen Sie den vorhandenen Code durch den folgenden Code.

$this->Id, 'title' => $this->title, ]; }}

Nachdem Sie den obigen Code hinzugefügt haben, können Sie nun den Text im Modell mit dem Explorer durchsuchenZugSuchen.

Für PHP-Entwickler ist das Hinzufügen einer schnellen und leistungsstarken Volltextsuche mit Plugins wie Laravel und Scout ein Kinderspiel. Mit Datenbank-Engines, Sammlungs-Engines sowie Meilisearch- und Elasticsearch-Funktionen können Sie in Millisekunden mit der Datenbank Ihrer Anwendung interagieren und erweiterte Suchmaschinen implementieren.

Durch die nahtlose Datenbankverwaltung und -aktualisierung erhalten Ihre Benutzer die bestmögliche Erfahrung und Ihr Code bleibt sauber und effizient.

Mit unserer LösungAnwendungs- und DatenbankhostingKinsta ist ein One-Stop-Shop für alle Ihre modernen Laravel-Entwicklungsbedürfnisse.Wir übernehmen die ersten 20 $.

FAQs

What is the alternative to laravel Algolia? ›

Elasticsearch, Coveo, Searchspring, and Luigi's Box are some of the best alternatives to Algolia's search for Laravel. It is advisable to weigh all your options to determine the most suitable one for your initiative.

How to use Scout in laravel? ›

Laravel Scout
  1. Introduction.
  2. Installation. Driver Prerequisites. Queueing.
  3. Configuration. Configuring Model Indexes. Configuring Searchable Data. Configuring The Model ID. ...
  4. Database / Collection Engines. Database Engine. Collection Engine.
  5. Indexing. Batch Import. Adding Records. ...
  6. Searching. Where Clauses. Soft Deleting. ...
  7. Custom Engines.

Is Laravel Scout free? ›

Using Scout Extended, you are free to use all Laravel Scout's features, and the full power of Algolia at the same time.

How to implement search in laravel? ›

Add the value property and set it to the search key in the request body.
  1. <input.
  2. type="search"
  3. class="form-control"
  4. placeholder="Find user here"
  5. name="search"
  6. value="{{ request('search') }}"

Does anyone still use Laravel? ›

Yes, Laravel is still relevant in 2022. The number of websites using Laravel is increasing. Many web and mobile app developers rely on Laravel to build small and medium-scale websites and web-based mobile apps. It is commonly used for ecommerce development and enterprise-level applications.

Why Laravel is better than Python? ›

"Clean architecture", "Growing community" and "Composer friendly" are the key factors why developers consider Laravel; whereas "Great libraries", "Readable code" and "Beautiful code" are the primary reasons why Python is favored.

How do I activate Scout? ›

Place your Scout Air earbuds in the case – with the lid open – to put them into pairing mode. Keep the case close to your Nintendo Switch. Select the Scout Air from the menu to pair. Once pairing is successful, select OK on the prompt.

How to learn Laravel fast? ›

How to Learn Laravel: A Step-by-Step Guide
  1. Step 1: Become Familiar With HTML, Core PHP, and Advanced PHP. Laravel is a PHP framework, and all coding is done using PHP language. ...
  2. Step 2: Learn What MVC Is and How It Works. ...
  3. Step 3: Work to Understand CRUD. ...
  4. Step 4: Learn the Fundamentals of Laravel. ...
  5. Step 5: Build a Project.
Sep 30, 2022

What is the average Laravel salary? ›

Laravel Developer salary in India ranges between ₹ 1.0 Lakhs to ₹ 6.6 Lakhs with an average annual salary of ₹ 3.0 Lakhs.

What is the hourly rate of Laravel? ›

How much does a Laravel Developer make hourly in the United States? The average hourly wage for a Laravel Developer in the United States is $40 as of May 01, 2023, but the salary range typically falls between $36 and $44.

Is Laravel easy for beginners? ›

Laravel is easy to learn. Laravel allows the developer to focus on their web application's design, architecture, and functionality.

How to get browser IP address in Laravel? ›

For getting the IP Address we have to include use Illuminate\Http\Request; in the controller and then add the code of the below pre tag. It will give the IP address of the network. $clientIP = \Request::ip(); dd($clientIP);

How to run a query in Laravel? ›

DB Methods #
  1. DB::select($query) : Using the select method, we can select the data from the table.
  2. DB::insert($query) : Using the select method, We can insert the data to the table.
  3. DB::update($query) : Using the select method, We can insert the data to the table.
Mar 25, 2020

Can Laravel handle millions of users? ›

We handle millions of users daily and we're not even close to the threshold. I suppose it's a case of: 99.999% of web applications can scale using Laravel but there'll be exceptions. People often forgets its just a framework. Any language/framework can scale.

Is it worth learning Laravel in 2023? ›

Laravel is great if you want to build something really fast so if you just had an idea and want to materialize it over the weekend then I'd say use Laravel, which provides you with that ease of use and fast development time.

Is Laravel worth in 2023? ›

It's a good choice for web development in 2023 because of its elegant syntax, built-in support for MVC architecture, routing, query builder, ORM system, authentication and authorization, task scheduler, active community, ability to handle complex web applications, localization, and event handling.

Which is harder Laravel or Django? ›

Django comes out on top in terms of speed (thanks in part to the faster Python), scalability and maintenance. Its built-in tools include decorators, SEO tools and third-party libraries. Laravel, on the other hand, is easier to use thanks to its simpler features, and contains strategy infusion as well.

Which is harder to learn Laravel or Django? ›

If you take a look at any basic routing code written in both languages, you would notice that Laravel's code is quite intuitive. Django's code, on the other hand, seems rather complex, that's because it uses regular expressions in its routing process, which are not the easiest thing to use, especially with beginners.

Should I learn PHP or Laravel? ›

Should I Learn PHP or Laravel? You should learn PHP. It is not easy learning PHP before using Laravel or any other framework. Laravel is not a substitute for PHP, it's a framework offering some basic structure and features for your application for you to build upon in PHP.

What happened to Scout app? ›

Dear User of the SCOUT Navigation Application,

Additionally, as of March 1st 2020, SCOUT is no longer available for download.

How do you reset Scout? ›

On Scout, go to Settings > Diagnostics > Factory Reset. To complete the reset, press Yes.

What does the Scout app do? ›

Scout GPS Link is a free mobile navigation app with MapStream™ mode, a full navigation experience with interactive, moving maps powered by real-time cloud information and designed exclusively for your car's multimedia screen.

What is the average Laravel salary in us? ›

The average Laravel developer salary in the United States of America is $117,386 and can vary anywhere between $78k-$180k/yr.

How do I get the highest salary in Laravel? ›

The top 5 highest paying jobs who knows Laravel with reported salaries are: software developer - ₹29.0lakhs per year. head of technology - ₹25.0lakhs per year. technical project manager - ₹20.0lakhs per year.

Is Laravel a skill? ›

Database Management Skills

Laravel developers are experts in managing database systems. They can organize all the data from a company's website, making it easier for end-users to quickly and effectively share the data across the organization.

What is the weakness of Laravel? ›

The framework's strong points include high security, robust deployments, and simple coding. It also boasts a variety of web development tools and is easy to learn. The drawbacks include the potentially high cost of Laravel developers, limited support, frequent need for updates, and slow speeds.

Is Laravel in demand? ›

And Laravel is one such PHP-based open-source web application framework that is used to develop scalable, robust, and highly-functional web applications. For brands, the craze of opting for Laravel application development is increasing day by day.

What should I learn first before Laravel? ›

Experts like software developer Marius Bogdan on the Quora forum emphasize that the most important thing to do before working with Laravel is to learn PHP. Apart from that, ideally you should also learn HTML, CSS, MySQL and JavaScript. “Learn the basics first (...) Start learning the language itself early on.

What is the salary of 2 year Laravel developer? ›

Php and Laravel Developer Salaries by Company
Chetu Php and Laravel Developer Salary 2-4 yrs exp₹ 4.6L (₹3.6 - ₹6) L
Webwing Technologies Php and Laravel Developer Salary 1-3 yrs exp₹ 2.3L (₹2 - ₹2.4) L
Matrix Bricks Infotech Php and Laravel Developer Salary 0-2 yrs exp₹ 2.3L (₹2.2 - ₹2.4) L
6 more rows

Is Laravel developer in demand? ›

Since Laravel developers are much in demand, organizations are looking to hire Laravel developers for their projects.

What is the best salary PHP? ›

Php Developer Salary
Annual SalaryMonthly Pay
Top Earners$136,000$11,333
75th Percentile$120,500$10,041
Average$107,205$8,933
25th Percentile$91,500$7,625

What is the salary of senior laravel developer? ›

The average senior laravel developer salary in India is ₹ 1,080,000 per year or ₹ 433 per hour. Entry-level positions start at ₹ 570,000 per year, while most experienced workers make up to ₹ 1,985,000 per year.

How much does a freelance PHP developer charge per hour? ›

PHP Developers on Upwork cost $15–$30/hr.

What is a laravel developer? ›

PHP / Laravel developer is an IT professional specialized in developing web applications using Laravel Framework within PHP programming language. In order to attract PHP / Laravel developer that best matches your needs, it is very important to write a clear and precise PHP / Laravel developer job description.

How much does Laravel training cost? ›

5,500/month for PHP Laravel Programming Training in Noida students.

Why not to choose Laravel? ›

Since Laravel is a PHP framework, if you are not building your application in PHP, Laravel is not even a choice. Depending on your chosen programming language, there are other options. For example, if you are going with java there's Spring Framework, for python there's Django and for C# there's . NET Framework.

Is Laravel easier to learn than React? ›

Laravel has a steeper learning curve compared to React as it is a full-stack framework that requires knowledge of PHP, HTML, CSS, and JavaScript. On the other hand, React has a relatively shallow learning curve, especially for developers who are already familiar with JavaScript.

What is the default URL in Laravel? ›

By default, Laravel installation comes with . env. example file, which has default value APP_URL=http://localhost.

What is the default IP for Laravel? ›

By default, your application's .env configuration file specifies that Laravel will be interacting with a MySQL database and will access the database at 127.0.0.1 .

What is ORM Laravel? ›

The ORM included in Laravel is called Eloquent and it enables us to work with the database objects and relationships using an expressive syntax. It is similar to working with objects in PHP. In Laravel development services, each database table has a corresponding “Model”.

How to use JSON in Laravel? ›

  1. Install the Laravel JSON:API testing package. composer require --dev laravel-json-api/testing. ...
  2. Generate a Server file. php artisan jsonapi:server v1. ...
  3. jsonapi. php. ...
  4. app/JsonApi/V1/Server. ...
  5. Generate the task model, migration and factory. ...
  6. The task model. ...
  7. Generate the schemas for tasks and users. ...
  8. Register the schemas in the server.
Sep 30, 2021

How to optimize Laravel for performance? ›

Tips to Improve Laravel Performance
  1. Config caching.
  2. Routes caching.
  3. Remove Unused Service.
  4. Classmap optimization.
  5. Optimize Composer.
  6. Limit Use Of Plugins.
  7. JIT Compiler.
  8. Choose a faster cache and session driver.
Jan 3, 2023

How to use raw SQL in laravel? ›

5 Ways to Use Raw Database Queries in Laravel
  1. Most Typical: selectRaw() with Avg/Sum/Count Calculations. ...
  2. Filtering YEARS: groupByRaw, orderByRaw and havingRaw. ...
  3. Calculating one field with sub-query: selectRaw() ...
  4. Old SQL Query? ...
  5. DB::statement() – Usually in Migrations.
Apr 10, 2020

How to run a script in laravel? ›

laravellocal.md
  1. Create a database locally named homestead utf8_general_ci.
  2. Pull Laravel/php project from git provider.
  3. Rename . ...
  4. Open the console and cd your project root directory.
  5. Run composer install or php composer. ...
  6. Run php artisan key:generate.
  7. Run php artisan migrate.
  8. Run php artisan db:seed to run seeders, if any.

What is raw method in laravel? ›

DB::raw() is used to make arbitrary SQL commands which aren't parsed any further by the query builder. They therefore can create a vector for attack via SQL injection. Since the query builder is using PDO in the background, we know there is a way to bind parameters to our query so it will sanitize the bound variables.

Which logging service is best for Laravel? ›

Monolog is the highly popular PHP logging library that Laravel uses for all its logging needs. The wonderful thing about Monolog is that it provides a common interface for you to write logs to anything, from standard text files to third-party log management services.

What are the best SEO tools for Laravel? ›

Laravel SEO Tools – overview, advantages
  • Digital Dreams is available as a Laravel SEO package. ...
  • Here is a package named Laravel Meta Manager. ...
  • You may follow this link to implement this SEO package in your Laravel application.
  • The most popular SEO plug-in for Laravel 5.8+ and Lumen is artesaos/seotools.
Mar 14, 2023

What can I use instead of Algolia github? ›

Top Alternatives to Algolia
  • Elasticsearch. Elasticsearch is a distributed, RESTful search and analytics engine capable. ...
  • Solr. Solr is the popular, blazing fast open source enterprise search platform from. ...
  • Swiftype. ...
  • Azure Search. ...
  • Klevu. ...
  • Amazon Elasticsearch Service. ...
  • Amazon CloudSearch. ...
  • MeiliSearch.

What is similar to Laravel node? ›

Laravel alternatives in NodeJS
Laravel (or Symfony) FeatureNodeJS Alternative
Blade (HTML templating)nunjucks, hbs, etc.
Mailnodemailer
Unit testsmocha + chai
Dusk (browser tests)puppeteer
14 more rows

Is Laravel faster than Django? ›

Django comes out on top in terms of speed (thanks in part to the faster Python), scalability and maintenance. Its built-in tools include decorators, SEO tools and third-party libraries. Laravel, on the other hand, is easier to use thanks to its simpler features, and contains strategy infusion as well.

Is Laravel more secure than PHP? ›

Laravel provides a higher level of security compared to core PHP by offering libraries that contain secure code, an authentication system, tokens to prevent third-party attacks, and protection against cross-site scripting and SQL injections.

Which big websites use Laravel? ›

Top 10 websites built on laravel framework
  • ALISON. Source: www.alison.com. ...
  • BARCHARTS. Source: www.barchart.com. ...
  • InvoiceNinja. Source: www.invoiceninja.com. ...
  • MyRank. Source: www.myrank.com. ...
  • Contentoo. Source: www.contentoo.com. ...
  • Usetably. Source: www.usetably.com. ...
  • Flarum. Source: www.flarum.com. ...
  • Bagisto. Source: www.bagisto.com.
Feb 9, 2022

How to make API faster in Laravel? ›

Tips to Improve Laravel Performance
  1. Config caching.
  2. Routes caching.
  3. Remove Unused Service.
  4. Classmap optimization.
  5. Optimize Composer.
  6. Limit Use Of Plugins.
  7. JIT Compiler.
  8. Choose a faster cache and session driver.
Jan 3, 2023

How to improve query performance in Laravel? ›

Use database caching.

You can cache popular database queries, reducing the load on your database, the server, and the client. Instead of hitting the database, Laravel can simply return the cached version of a query. This can provide a huge performance boost, especially for high-traffic sites and APIs.

Is there something better than GitHub? ›

If we compare GitHub with its alternatives, then each tool has its pros and cons. Like Apache Allura, Git Bucket, and Gitea are completely free and open-source with their unique features for different needs. The other tools like GitLab, Git Kraken, and Bitbucket are not open-source but they also have free plans.

What is Google's alternative to GitHub? ›

Google's launch of Duet AI, an advanced generative AI collaborator. It offers an alternative to Microsoft's Github Copilot, assisting programmers with coding tasks. Duet AI by Google offers similar features to Github Copilot and some additional capabilities.

Is Algolia safe? ›

Algolia uses industry standard encryption schemes and protocols to encrypt data transmissions between the data centers. This is intended to prevent reading, copying or modification of the data.

Why NodeJS is better than Laravel? ›

Node is an open-source runtime environment, while Laravel is an open-source web development framework. Full-stack: Both Laravel and Node provide full-stack development. On the front end, Laravel employs JavaScript and PHP on the back end. JavaScript is used on both the frontend and backend of Node.

Which is faster NodeJS or Laravel? ›

Also, the cache tags of Laravel allow applications to load pre-stored data, which results in faster response time and more efficient performance. On the other hand, due to the non-blocking future provided by Nodejs, it is the ideal choice for microoperations that don't affect the main purpose.

Should I learn Laravel or NodeJS? ›

If you need a full-scale system to handle a massive website that is based on CMS, go with Laravel. If you need a service-based architecture that is compact, go with Node JS. Laravel platform contains the Eloquent ORM, which requires a basic implementation of PHP Active Record.

References

Top Articles
Latest Posts
Article information

Author: Msgr. Refugio Daniel

Last Updated: 08/24/2023

Views: 5545

Rating: 4.3 / 5 (54 voted)

Reviews: 93% of readers found this page helpful

Author information

Name: Msgr. Refugio Daniel

Birthday: 1999-09-15

Address: 8416 Beatty Center, Derekfort, VA 72092-0500

Phone: +6838967160603

Job: Mining Executive

Hobby: Woodworking, Knitting, Fishing, Coffee roasting, Kayaking, Horseback riding, Kite flying

Introduction: My name is Msgr. Refugio Daniel, I am a fine, precious, encouraging, calm, glamorous, vivacious, friendly person who loves writing and wants to share my knowledge and understanding with you.