Wie/wo zu entkoppeln Geschäftslogik unter Lumen, weg von der Steuerung ein vorzugsweise weg von "app/http" Verzeichnis.Lumen Laravel entkoppeln Geschäftslogik
Antwort
Nach der Suche im Internet nach einem sauberen, schlüssigen Weg, um meine Geschäftslogik zu entkoppeln, entschied ich mich zu experimentieren. Für mich wirkt das Folgende wie ein Zauber.
Erstellen Sie ein neues Verzeichnis unter "app \ Objects". Denken Sie daran, dass ich meine "Objekte" als meine persönliche Vorliebe gewählt habe, fühlen Sie sich frei, das zu nennen, was Ihnen passt.
Meine neue Datei Sitze unter "app \ Objects \ testObject.php" für dieses Beispiel:
namespace App\Objects;
class testObject
{
public function businessLogicTest()
{
// some database calls would go here
// response here
return 'This is some business logic response';
}
}
dann unter dem "app \ Http \ Controllers \ Controller.php" fügen Sie den folgenden „verwenden App \ Objekte \ testobject“und dann instanziiert Ihre Logik:
namespace App\Http\Controllers;
use Laravel\Lumen\Routing\Controller as BaseController;
use App\Objects\testObject;
class Controller extends BaseController
{
public function helloWorld()
{
$test = new testObject();
echo $test->businessLogicTest();
}
}
Sobald Sie mit Ihrer Verzeichnisstruktur zufrieden sind gehen die Datenbanknutzung unter dem neuen Business-Logik-Schicht zu verwenden. Hoffe es hilft :-)
- 1. Laravel Lumen Eingangsklasse nicht
- 2. Lumen (Laravel) Übersetzung in Controller
- 3. Laravel/Lumen: Ansicht :: share() Alternative?
- 4. Verwendung von Lumen + Dingo + JWT ohne Lumen/Laravel Sitzung
- 5. Befehl "serve" ist nicht definiert (Lumen-Laravel)
- 6. Umwandlung einer Laravel-Anwendung in Lumen
- 7. Laravel fortgeschritten, nicht in Lumen arbeiten
- 8. Weltweit Laravel/Lumen auf Ubuntu installieren
- 9. Laravel Lumen | bekomme Einzelwerte aus Array
- 10. Laravel Lumen + Angular .. Gleiches Projekt oder nicht?
- 11. Wie vergleicht Laravel 5.2 API mit Lumen?
- 12. Wie funktioniert das Lumen/Laravel Logging System?
- 13. Lumen/Dingo/Laravel Zum richtigen Controller
- 14. Wie Laravel-Paket in Lumen verwenden?
- 15. Zeitzone in Lumen oder Laravel ändern 5
- 16. SQL zwischen zwei Säulen in Laravel/Lumen
- 17. Laravel/Lumen-Warteschlange: hören funktioniert nicht
- 18. Laravel/Lumen -, die eine Beziehung mit Parametern
- 19. Apache alias für Laravel und Lumen
- 20. Laravel Lumen Stellen Sie sicher, JSON Antwort
- 21. PHPSstorm Plugin für Lumen wie Laravel
- 22. Lumen Rahmenrouting funktioniert nicht
- 23. Lumen (5.1.6) daily log
- 24. Lumen make: Befehl
- 25. Lumen FatalThrowableError bei Validierung
- 26. Lumen HTTP-Basisauthentifizierung
- 27. Lumen unvorhersagbaren Ausgang
- 28. Share-Datenbank zwischen einem Lumen und Laravel App
- 29. Funktioniert die Aufgabenplanung in Lumen genauso wie in Laravel?
- 30. entfernen Laravel Lumen öffentlichen Weg Ubuntu Cloud Server