Seit dem Jahr 2020 bis 2024 war die Entwicklung in Laravel ein Segen für die Entwickler auf der ganzen Welt. In diesem kleinen Codebeispiel zeigen wir Ihnen den Weg der Weitergabe von Daten von einer Route an einen Controller und dann an eine Ansicht. Dies ist ein grundlegender Aspekt der Laravel-Entwicklung im Allgemeinen und wir sehen das oft. Laravel 11 bietet wie seine Vorgängerversionen eine elegante und effiziente Möglichkeit, diesen Prozess zu verwalten. Für die Erstellung dynamischer und reaktionsfähiger Webanwendungen ist es von entscheidender Bedeutung, zu verstehen, wie Daten effektiv zwischen diesen Komponenten ausgetauscht werden können.
*(I) Übersicht über Laravel Routing
*
In Laravel KÖNNTEN Routen in der Datei „routes/web.php“ definiert werden. Eine Route besteht typischerweise aus einem URL-Pfad und einer entsprechenden Aktion, wie etwa dem Aufrufen einer Methode auf einem Controller usw. usw. Wenn ein Benutzer auf eine bestimmte URL zugreift, ermittelt Laravel die entsprechende Route und führt die zugehörige Logik aus.# #
Route::get('/example', [ExampleController::class, 'show']);
(II) Weitergabe von Daten von der Route an den Controller*
Im Beispiel unten können Sie sehen, dass wir Daten von einer Route an einen Controller übergeben würden, und dann würden wir Routenparameter in die URL aufnehmen und auf diese Parameter innerhalb der Controller-Methode zugreifen.
Route::get('/user/{id}', [UserController::class, 'show']);
public function show($id) { // Fetch the user data using the ID $user = User::find($id); // Return the view with the user data return view('user.profile', ['user' => $user]); }
(III) Übergabe von Daten vom Controller an View*
Sobald die Daten im Controller verarbeitet werden, ist es häufig erforderlich, diese Daten zum Rendern an eine Ansicht zu übergeben. Laravel bietet mehrere Möglichkeiten, Daten von einem Controller an eine Ansicht zu übergeben.
(i) Übergeben von Daten mit der with()-Methode*
public function show($id) { $user = User::find($id); // Passing data using with() method return view('user.profile')->with('user', $user); }
(ii) Übergeben von Daten mithilfe eines assoziativen Arrays*
public function show($id) { $user = User::find($id); // Passing data using an associative array return view('user.profile', ['user' => $user]); }
(iii) Übergeben von Daten mit der Funktion „compact()“*
public function show($id) { $user = User::find($id); // Passing data using the compact() function return view('user.profile', compact('user')); }
(IV) Zugriff auf übergebene Daten in der Ansicht*
In der Ansicht kann auf die vom Controller übergebenen Daten mithilfe der Blade-Syntax, der Template-Engine von Laravel, zugegriffen werden.
(V) Übergabe mehrerer Parameter*
Sie können auch mehrere Parameter von einer Route an einen Controller und dann an eine Ansicht übergeben.
Route::get('/post/{id}/comment/{commentId}', [PostController::class, 'showComment']);
public function showComment($id, $commentId) { $post = Post::find($id); $comment = Comment::find($commentId); return view('post.comment', compact('post', 'comment')); }
Das obige ist der detaillierte Inhalt vonSo übergeben Sie Daten von der Route an den Controller und zeigen sie in Laravel 11 an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!