© FGC/Shutterstock.com
PHP Magazin
Was mit Eloquent ORM möglich ist - erklärt am Beispiel Buchverleihtool

Laravel ORM im Einsatz

Eloquent, das ORM (Object-relational Mapping) von Laravel, erleichtert die Kommunikation mit einer Datenbank ungemein. Anhand eines JSON API für ein Buchverleihtool zeigen wir, was man damit anstellen kann - komplett unabhängig vom dahinterliegenden Datenbanksystem.

Manuel Wutte, Harald Nezbeda


Laravel ist schon seit vielen Jahren eins der wohl beliebtesten PHP Frameworks. Das liegt u. a. daran, dass man mit Hilfe von Laravel schnell sowohl komplexe als auch sichere Webapplikationen erstellen kann. Der Entwicklungsprozess wird dadurch in vielen Bereichen – wie beispielsweise Routing, Caching, Authentifizierung, ORM u. v. a. m. – erheblich vereinfacht. Die zugehörige Dokumentation ist sehr gut gestaltet, klar strukturiert und bietet zahlreiche Codebeispiele, die selbst einem Laien den Einstieg verhältnismäßig einfach machen. Sie stellt den Grundpfeiler des Open-Source-Tools dar. Des Weiteren erfreut sich Laravel auch einer sehr großen und engagierten Community. In diesem Artikel werden wir uns auf Laravels Eloquent ORM konzentrieren und zeigen, wie man Eloquent in der Praxis einsetzt – komplett unabhängig vom dahinterliegenden Datenbanksystem.

Set-up mit Docker

Da wir auf unterschiedlichen Betriebssystemen unterwegs sind (Windows und Ubuntu Linux), haben wir uns dazu entschlossen, eine flexible Entwicklungsumgebung auf Basis von Docker zu nutzen. Die hat zusätzlich den Vorteil, dass sie uns den initialen Set-up-Prozess der einzelnen Komponenten, wie Datenbank und Webserver, deutlich vereinfacht. Die initiale Version des verwendeten Docker-Set-ups kann man auf GitHub [1] finden.

Datenbankdiagramm

Das Datenbankdiagramm (Abb. 1) haben wir mit Hilfe des Zeichentools draw.io erstellt. Wir exportieren dabei ein von draw.io generiertes SVG und speichern es ins Git Repository des Projekts. Auf diese Weise können wir sicherstellen, dass wir immer ein Diagramm haben, das die aktuelle Codebasis widerspiegelt. Natürlich müssen wir selbst dafür Sorge tragen, dass wir jede Änderung des Datenbankschemas auch wieder korrekt im Diagramm abbilden. 

Abb. 1: Datenbankdiagramm [2]

Erstellen von Models und Migrationen

Migrationen dienen dazu, Kontrolle und Überblick über die gesamte Datenbankarchitektur zu bewahren. Zusätzlich sind damit schnelle und einfache Änderungen auf unterschiedlichsten Systemen möglich – ohne dass man sich Gedanken machen muss, ob man wohl eine Änderung übersehen hat. Mit dem Schema-Builder von Laravel wird das ganze Prinzip dahinter spielerisch einfach.

Um eine neue Migration zu erstellen, bietet sich das integrierte Kommandozeilenprogramm Artisan von Laravel an, mit dem sich Teile des Frameworks auch über das CLI steuern lassen. Dazu navigiert man mit der Konsole ins Root-Verzeichnis von Laravel und erstellt die neue Migration mit dem folgenden Co...

PHP Magazin
Was mit Eloquent ORM möglich ist - erklärt am Beispiel Buchverleihtool

Laravel ORM im Einsatz

Eloquent, das ORM (Object-relational Mapping) von Laravel, erleichtert die Kommunikation mit einer Datenbank ungemein. Anhand eines JSON API für ein Buchverleihtool zeigen wir, was man damit anstellen kann - komplett unabhängig vom dahinterliegenden Datenbanksystem.

Manuel Wutte, Harald Nezbeda


Laravel ist schon seit vielen Jahren eins der wohl beliebtesten PHP Frameworks. Das liegt u. a. daran, dass man mit Hilfe von Laravel schnell sowohl komplexe als auch sichere Webapplikationen erstellen kann. Der Entwicklungsprozess wird dadurch in vielen Bereichen – wie beispielsweise Routing, Caching, Authentifizierung, ORM u. v. a. m. – erheblich vereinfacht. Die zugehörige Dokumentation ist sehr gut gestaltet, klar strukturiert und bietet zahlreiche Codebeispiele, die selbst einem Laien den Einstieg verhältnismäßig einfach machen. Sie stellt den Grundpfeiler des Open-Source-Tools dar. Des Weiteren erfreut sich Laravel auch einer sehr großen und engagierten Community. In diesem Artikel werden wir uns auf Laravels Eloquent ORM konzentrieren und zeigen, wie man Eloquent in der Praxis einsetzt – komplett unabhängig vom dahinterliegenden Datenbanksystem.

Set-up mit Docker

Da wir auf unterschiedlichen Betriebssystemen unterwegs sind (Windows und Ubuntu Linux), haben wir uns dazu entschlossen, eine flexible Entwicklungsumgebung auf Basis von Docker zu nutzen. Die hat zusätzlich den Vorteil, dass sie uns den initialen Set-up-Prozess der einzelnen Komponenten, wie Datenbank und Webserver, deutlich vereinfacht. Die initiale Version des verwendeten Docker-Set-ups kann man auf GitHub [1] finden.

Datenbankdiagramm

Das Datenbankdiagramm (Abb. 1) haben wir mit Hilfe des Zeichentools draw.io erstellt. Wir exportieren dabei ein von draw.io generiertes SVG und speichern es ins Git Repository des Projekts. Auf diese Weise können wir sicherstellen, dass wir immer ein Diagramm haben, das die aktuelle Codebasis widerspiegelt. Natürlich müssen wir selbst dafür Sorge tragen, dass wir jede Änderung des Datenbankschemas auch wieder korrekt im Diagramm abbilden. 

Abb. 1: Datenbankdiagramm [2]

Erstellen von Models und Migrationen

Migrationen dienen dazu, Kontrolle und Überblick über die gesamte Datenbankarchitektur zu bewahren. Zusätzlich sind damit schnelle und einfache Änderungen auf unterschiedlichsten Systemen möglich – ohne dass man sich Gedanken machen muss, ob man wohl eine Änderung übersehen hat. Mit dem Schema-Builder von Laravel wird das ganze Prinzip dahinter spielerisch einfach.

Um eine neue Migration zu erstellen, bietet sich das integrierte Kommandozeilenprogramm Artisan von Laravel an, mit dem sich Teile des Frameworks auch über das CLI steuern lassen. Dazu navigiert man mit der Konsole ins Root-Verzeichnis von Laravel und erstellt die neue Migration mit dem folgenden Co...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang