Heim > PHP-Framework > Laravel > Detaillierte Erläuterung des Löschvorgangs des Laravel-Ressourcenroutings

Detaillierte Erläuterung des Löschvorgangs des Laravel-Ressourcenroutings

PHPz
Freigeben: 2023-04-23 09:32:12
Original
529 Leute haben es durchsucht

Laravel ist ein leistungsstarkes PHP-Framework mit einem breiten Anwendungsspektrum im Bereich Webentwicklung. Unter diesen ist das Ressourcenrouting eines der sehr wichtigen Konzepte in Laravel, das uns helfen kann, schnell RESTful-APIs zu erstellen. Bei der Verwendung des Ressourcenroutings kommt es häufig zu Löschvorgängen. In diesem Artikel wird daher hauptsächlich der Löschvorgang des Laravel-Ressourcenroutings vorgestellt.

1. Einführung in das Ressourcenrouting

In Laravel kann das Ressourcenrouting über die Route::resource-Methode definiert werden. Diese Methode definiert automatisch sieben häufig verwendete Routing-Operationsmethoden, nämlich: Indizieren, Erstellen, Speichern, Anzeigen, Bearbeiten, Aktualisieren und Zerstören.

Zum Beispiel können wir eine einfache Ressourcenroute durch den folgenden Code definieren:

Route::resource('posts', 'PostController');
Nach dem Login kopieren

Auf diese Weise generiert Laravel automatisch /posts, /posts/create, /posts/{post}, /posts/{post}/ Bearbeiten Sie für uns. Warten Sie auf sieben Routen.

2. Löschvorgang

Beim Ressourcenrouting entspricht der Löschvorgang der Zerstörungsmethode. Wenn der Benutzer in der Webanwendung auf die Schaltfläche „Löschen“ klickt, müssen wir eine DELETE-Anfrage erstellen und Laravel ruft die Methode destroy auf, um den Vorgang abzuschließen.

  1. Route definieren

Wir müssen eine Route für die Zerstörungsmethode definieren, zum Beispiel:

Route::delete('posts/{post}', 'PostController@destroy')->name('posts.destroy');
Nach dem Login kopieren

Diese Route stimmt mit der DELETE-Anfrage und dem /posts/{post}-Pfad überein und leitet die Anfrage an die Zerstörungsmethode weiter des PostControllers.

  1. Controller-Methode

Im Controller müssen wir das dem Löschvorgang entsprechende Entitätsobjekt abrufen und die Löschmethode aufrufen, um es aus der Datenbank zu löschen. Zum Beispiel:

public function destroy($id)
{
    $post = Post::find($id);
    $post->delete();
    return redirect()->route('posts.index');
}
Nach dem Login kopieren

Hier verwenden wir zunächst die Post::find-Methode, um das zu löschende Entitätsobjekt zu finden, und verwenden dann die Löschmethode, um es aus der Datenbank zu löschen. Schließlich verwenden wir die Weiterleitungsmethode, um den Benutzer auf die Seite mit der Beitragsliste umzuleiten.

  1. HTML-Formular

Im HTML-Formular müssen wir ein Formular für die Löschschaltfläche generieren und darin ein verstecktes Feld _method hinzufügen, um anzugeben, dass es sich um eine DELETE-Anfrage handelt.

Zum Beispiel können wir den folgenden Code verwenden, um eine Löschschaltfläche zu generieren:

<form action="{{ route(&#39;posts.destroy&#39;, $post->id) }}" method="POST">
    {{ csrf_field() }}
    {{ method_field('DELETE') }}
    <button type="submit">删除</button>
</form>
Nach dem Login kopieren

Hier verwenden wir die Route-Methode, um den /posts/{post}-Pfad mit Parametern zu generieren, und setzen das Methodenattribut des Formulars auf DELETE . Anschließend verwenden wir die Methode csrf_field, um das CSRF-Token zu generieren, und die Methode method_field, um das Feld _method zu generieren.

  1. Benanntes Routing

Abschließend können wir bei der Definition der Route einen benannten Routennamen posts.destroy für die Destroy-Methode festlegen. Dieser Name kann uns helfen, die URL einfacher zu generieren und nach Abschluss des Löschvorgangs auf die Seite weiterzuleiten.

Zum Beispiel können wir den folgenden Code verwenden, um eine Weiterleitungsantwort zu generieren:

return redirect()->route('posts.index');
Nach dem Login kopieren

Hier verwenden wir die Route-Methode und übergeben den Parameter posts.index, um den Pfad posts.index zu generieren, wodurch der Benutzer zu den Beiträgen weitergeleitet wird Listenseite.

3. Zusammenfassung

Durch die oben genannten Schritte können wir den Löschvorgang des Ressourcenroutings problemlos in Laravel implementieren. Wenn der Benutzer in der Webanwendung auf die Schaltfläche „Löschen“ klickt, erstellt Laravel eine DELETE-Anfrage und ruft die Destroy-Methode des Controllers auf, um den Löschvorgang abzuschließen. Die Verwendung benannter Routen erleichtert die Generierung von URLs und die Umleitung von Antworten.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Löschvorgangs des Laravel-Ressourcenroutings. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage